比如在编辑用户时,编辑页面提交后,表单值会生成一个user vo;并从数据库查询出该user的原属性值( user po),然后两个比对判断哪些属性发生变化。
然后再将user vo update进入数据库,此时会报错:
org.hibernate.NonUniqueObjectException: A different object with the same identifier value was already associated with the session : [com.model.UserVO#34re]
然后再将user vo update进入数据库,此时会报错:
org.hibernate.NonUniqueObjectException: A different object with the same identifier value was already associated with the session : [com.model.UserVO#34re]
解决办法有两种:
1、session.evict(po)然后再session.update(vo)
2、session.merge(vo)