別のデータベースからエンティティを更新するバッチがあります。メイン アプリケーションで使用されているものと同じ entityManager を使用しますが、TomcatServer を再起動するまでエンティティの変更を確認できません。
1 に答える
0
EntityManager は一括操作を認識しません。JPA 2.0仕様では、これは次の言葉で伝えられています。
データベースとアクティブな永続化コンテキスト内のエンティティとの間に不整合が生じる可能性があるため、一括更新または削除操作を実行する場合は注意が必要です。一般に、一括更新および一括削除操作は、新しい永続化コンテキストのトランザクション内で、またはそのような操作によって状態が影響を受ける可能性があるエンティティをフェッチまたはアクセスする前にのみ実行する必要があります。
できることは、EntityManager.refresh(Object entity)を介して単一のエンティティを更新することです
于 2012-07-06T11:30:58.550 に答える