日期:2014-05-17  浏览次数:20715 次

spring管理hibernate事务问题

Tuser t = userDao.get("from Tuser t where t.name = 'admin' and t.id != 'admin'");
if (t != null) {
t.setName(UUID.randomUUID().toString());
}

userDao.saveOrUpdate(t);

Tuser admin = new Tuser();
admin.setId("admin");
admin.setName("admin");
admin.setPwd(Encrypt.e("admin"));
admin.setModifydatetime(new Date());

userDao.saveOrUpdate(admin);

  

上面的代码有两处saveOrUpdate,对象t在数据库中查找出来不为null,改变其name属性,在事务提交时没有进行更新,为什么      
------解决方案--------------------
saveOrUpdate方法代码
------解决方案--------------------
出错事务回滚了
------解决方案--------------------
hibernate 语句打印出来看看,是不是执行了
------解决方案--------------------
你报什么错?

Tuser admin = userDao.get("from Tuser t where t.name = 'admin' and t.id != 'admin'");
admin.setId("admin");
userDao.saveOrUpdate(admin);

试试