在Hibernate的session中同时有两个相同id的同类型对象,修改失败

时间:2014-08-24 23:45:03   收藏:0   阅读:606

若在Hibernate的session中同时有两个相同id的同类型对象,修改会失败,报错:a different object with the same identifier value was already

解决方案:

使用merge()

如下情景:

User u = dao.getUser(...) ;

User u2 = ... ;

u2.setId(u.getId()) ; //此时的session中就有了两个id一样的对象了,

dao.update(u2) ; //这里就会报错了,

dao.merge(u2) ; //这样就行了

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!