作者:小生、我怕怕
网址:http://www.apkbank.net
http://www.17zouguo.net
转载请注明该页面地址。
今天遇到了一个问题 a different object with the same identifier value was already associated with the session 很难解决,查了查文档,总结如下。
Hibernate 疑难异常及处理
1、a different object with the same identifier value was already associated with the session。
错误原因:在hibernate中同一个session里面有了两个相同标识但是是不同实体。
解决方法一:session.clean()
PS:如果在clean操作后面又进行了saveOrUpdate(object)等改变数据状态的操作,有可能会报出"Found two representations of same collection"异常。
解决方法二:session.refresh(object)
PS:当object不是数据库中已有数据的对象的时候,不能使用session.refresh(object)因为该方法是从hibernate的session中去重新取object,如果session中没有这个对象,则会报错所以当你使用saveOrUpdate(object)之前还需要判断一下。
解决方法三:session.merge(object)
PS:Hibernate里面自带的方法,推荐使用。
2、Found two representations of same collection
错误原因:见1。
解决方法:session.merge(object)
以上两中异常经常出现在一对多映射和多对多映射中
|
分享到:
相关推荐
MongoDB疑难杂症分析及优化MongoDB疑难杂症分析及优化MongoDB疑难杂症分析及优化MongoDB疑难杂症分析及优化MongoDB疑难杂症分析及优化MongoDB疑难杂症分析及优化MongoDB疑难杂症分析及优化MongoDB疑难杂症分析及优化...
护理疑难病例讨论记录x.pdf
React Native 疑难杂症
慢性阻塞性肺疾病(COPD)疑难病例讨论.doc
系统疑难杂症处理 解决系统各种问题 系统疑难杂症处理文件,解决系统各种问题
Java 疑难杂症_笔记
以COM对象处理Excel疑难杂症
坠积性肺炎护理疑难病例讨论PPT课件.pptx
关于MySQL数据库疑难杂症排查,审明:本资源归原作者所有。
MySQL数据库疑难杂症排查.pptx
冠心病护理查房疑难病例讨论.pptx
ECMO护理疑难病例.ppt
护理疑难病例讨论.pdf
17个Docker常见疑难杂症解决方案汇总.docx
ECMO护理疑难病例讨论.ppt
疑难病例讨论重症肺炎.pptx
疑难病例讨论记录模板.pdf
新生儿呕吐疑难病例讨论.pptx
菜鸟必读之电脑疑难杂症在线解答集锦,详细介绍了电脑使用过程中的常见问题及其解决方法
内含有各种电脑配件问题的描述与解答。解答详细。