论坛首页 Java企业应用论坛

问个spring中使用hibernate的问题

浏览 3376 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-10-10  
  环境是spring 1.x + hibernate 2.x,我在service里的一个方法里先调用了 userRightDao.delete(List)删除数据库中的3条记录,然后再调用userRightDao.save(List),插入3条与刚才删除的记录一样的数据,这时候就报主键重复的错误。 但是如果我后插入的3条数据与原来数据库里的数据不一样就不会抱错,程序也能正常地先删除数据然后再插入新数据,后台打印的sql语句显示,hibernate是先insert,然后再delete。
   请教下这个是我配置的问题,还是hibernate在处理时就是先insert后delete的?


userRightDao.delete(List)里是调用 getHibernateTemplate().delete(UserRight)删除记录的,
userRightDao.save(List)里是调用 getHibernateTemplate().save(UserRight)保存记录的,

   发表时间:2006-10-10  
解决了,在userRightDao.delete(List)的最后加上 getSession.flush()就正常了,后台打印的sql也是先delete后insert了。
我刚学spring和hibernate,版主帮忙删了这个贴子吧,估计这个问题太初级了。
0 请登录后投票
   发表时间:2006-10-11  
hibernate的问题是它的做法对初学者来说常超出你的直觉,这很讨厌
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics