gpt4 book ai didi

java - 当我在 Hibernate 中合并一个对象时会发生什么?

转载 作者:行者123 更新时间:2023-11-30 11:48:32 28 4
gpt4 key购买 nike

在我的项目中,有时我必须加载一个对象来编辑它们。在此之前,我想,hibernate session 是关闭的。

在保存编辑的对象之前的某个时间(使用saveOrUpdate),我必须在数据库中搜索(再次打开 session )一个对象,而且,这个搜索返回的对象可能是我将更新的对象。 (我需要这个对象来进行一些验证和其他事情......)

在此之后,当我尝试保存该对象时,hibernate 说我在 session 中有另一个具有相同标识符的对象。

我已经实现了我自己的equalshashcode 方法,我尝试做一些事情,比如session.evict(object),但是, 没有任何效果。

因此,我使用 session.merge(object) 而不是 session.saveOrUpdate(object),并且它有效。但是,我不知道这样做的确切后果是什么。我可以简单地将 saveOrUpdate 替换为 merge,否则我会遇到一些问题?关于此我还必须了解的另一件事?

提前致谢。

最佳答案

我认为这是 What are the differences between Hibernate Session methods saveOrUpdate() and merge()? 的副本以及其他一些问题,确实是非常常见的问题......

关于java - 当我在 Hibernate 中合并一个对象时会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8746139/

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