若在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) ; //这样就行了
时间: 2024-12-11 07:45:27