gpt4 book ai didi

Hibernate:无法将数据库状态与 session 同步

转载 作者:行者123 更新时间:2023-12-04 13:44:35 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:




9年前关闭。




Possible Duplicate:
Hibernate: different object with the same identifier value was already associated with the session



在尝试向多对多关联表插入新条目时,我收到此错误: Could not synchronize database state with session我可以理解这是处理 getSession() 和 session.close()

但我无法准确地弄清楚。对于每笔交易,我都在创建一个新 session 。
但是我在用户注销时关闭了所有 session 。即:创建一个 hibernate session 并将其与 HttpSession 绑定(bind)。然后我在用户注销时将其销毁。

在处理此问题后的某些时候,我得到 a different object with the same identifier value was already associated with the session:错误。

所有这些错误都是由于没有正确打开和关闭 session 而出现的。

您更喜欢哪种方法来打开和关闭 session 。我的项目是创建一个网络应用程序。
该网络应用程序中的每一个 Action 都与数据库有关。

有什么建议么!!!

最佳答案

a different object with the same identifier value was already associated with the session



Hibernate 跟踪在 session 中工作的映射对象,因此它可以检测对这些对象所做的任何更改,并在事务提交时将它们写回数据库。如果允许您将具有相同数据库标识符对象的不同对象添加到 session 中,那么应该写入哪个对象的状态将是不明确的。

Working with objects来自 hibernate 引用手册的详细解释了这一点(以及解决它的方法)。特别感兴趣的是标题为“修改分离的对象”的部分,但也需要阅读介绍以理解所使用的术语。

关于Hibernate:无法将数据库状态与 session 同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3820452/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com