一部の jboss 設定で EntityManager を使用してキャッシングを無効にすることは可能ですか?
説明します。休止状態を介して EntityManager を使用している製品の最終的な「耳」(このようなもの、私はこれの初心者) があり、いくつかの動作をテストする必要があります。私にとって簡単な方法は、エンティティの状態をデータベースで直接変更 (削除、作成) することです。しかし、これを行った後、アプリケーションはしばらくの間古い値を見つけるために残ります。エンティティマネージャーに使用される jboss キャッシュについて読みました。
したがって、テストのために、EntityManagerキャッシュを無効にしたいのですが、アプリケーションレベルでは無効にできず、jbossレベルでのみ無効にできます。
簡単に言うと、他のアプリケーションと一緒にデータベースで編集できるため、実際のエンティティの状態を常にリロードするアプリケーションが必要です。また、アプリケーション レベル (hibernate.xml など) でキャッシュを無効にすることは不可能です。
PS: jboss 4.2.3、ejb3、hibernate3