-2

我有一批从另一个数据库更新实体,我使用与主应用程序中使用的相同的 entityManager,但在我重新启动 TomcatServer 之前,我看不到实体的变化。

4

1 回答 1

0

EntityManager 不知道批量操作。在 JPA 2.0 规范中,这是用以下词语来说明的:

执行批量更新或删除操作时应小心,因为它们可能导致数据库与活动持久性上下文中的实体之间的不一致。一般来说,批量更新和删除操作只能在新的持久性上下文中的事务内执行,或者在获取或访问其状态可能受此类操作影响的实体之前执行。

您可以做的是通过EntityManager.refresh(Object entity)刷新单个实体

于 2012-07-06T11:30:58.550 回答