1

すべてが単一のトランザクションにラップされた複数のコンポーネントにまたがる、かなり複雑なサーバー呼び出しを想像してみてください。1 つのコンポーネントで新しいエンティティを作成できますsaveOrUpdate。別のコンポーネントがこのエンティティにアクセスできますが、このエンティティがこのセッションで作成されたか、それ以前に作成されたかを知る必要があります。どうすれば達成できますか?

wasCreatedInThisSession理想的には、以下のようなブール呼び出しを探します。

public void myTransactionalMethod() {
    MyEntity e1 = session.load(MyEntity.class, 15);
    session.wasCreatedInThisSession(e1); // -> false
    MyEntity e2 = new MyEntity("Test");
    session.saveOrUpdate(e2);
    session.wasCreatedInThisSession(e2); // -> true
}
4

0 に答える 0