【发布时间】:2020-02-05 15:25:12
【问题描述】:
这是一个基本问题,但我找不到太多关于此的信息。
用例如下: 我使用 CriteriaQuery 进行了搜索以找到 x 条记录。 我在此方法中发起实际搜索的最后一次调用如下:
getEntityManager().createQuery(query).setMaxResults(MAX_ROWS).getResultList())
所以这意味着我要返回的记录附加到 entityManager。
想象一下,我将深度克隆这些实体,更改这些克隆实体中的一些值,然后尝试调用 entityManager.merge(clonedEntity)。这行得通吗? 'merge' 方法是否检查实体中的 'equals' 方法以在数据库中找到类似的对象并更新这些对象,否则这将不起作用,您需要更改附加到 entitymanager 的实体才能更新这些记录在数据库中?
提前感谢您的帮助
【问题讨论】:
-
只有分离的实体才需要合并。
-
谢谢你,这就是我需要知道的。