public ProcessForm saveOrUpdate( final ProcessForm pf) throws Exception { //增加事務 Trans.exec(new Atom() { @Override public void run() { if(StringUtils.isNotBlank(pf.getId())){ ProcessForm oldPf = nutzDao.fetch(ProcessForm.class, pf.getId()); BeanUtils.copyProperties(pf,oldPf); oldPf.setUpdateTime(DateUtil.getTodayTimeString()); nutzDao.update(oldPf); ProcessForm processForm=null; processForm = oldPf; }else { pf.setId(UUID.randomUUID().toString().replace("-", "")); pf.setCreateTime(DateUtil.getTodayTimeString()); ProcessForm processForm=null; //新增表單管理 processForm = nutzDao.insert(pf); //創建表 try { createTable(processForm.getId()); }catch (Exception e){ log.debug(e); } } } }); return pf; }
上面這個這個函數上加了事務
具體的事務可以參照nutz站點
http://www.nutzam.com/core/dao/transaction.html