gpt4 book ai didi

java - Hibernate - 从数据库获取对象版本

转载 作者:行者123 更新时间:2023-12-01 11:55:18 25 4
gpt4 key购买 nike

我的应用程序中有一个场景:
1.我从数据库获取对象:

hql = "some hql query";
Query query = session.createQuery(hql);
return query.list();

2.用户对此对象进行更改。
3. 用户对更改不满意并希望重新加载对象的数据库版本。 (一种“中止编辑”操作)

这就是我碰壁的地方。当我第二次尝试获取对象时,hibernate 给了我对内存中已经存在的相同对象的引用 - 我可以通过比较 Debug模式下的对象 id 来判断。但内存中的这些对象与数据库版本相比发生了变化。
我如何强制 hibernate 从数据库读取对象而不是给我引用内存中已更改的版本?

最佳答案

来自 Java Persistence 2.0 规范:

3.2.5 Refreshing an Entity Instance

The state of a managed entity instance is refreshed from the database by invoking the refresh method on it or by cascading the refresh operation.

关于java - Hibernate - 从数据库获取对象版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28500728/

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