0

entity1 と entity2 の 2 つのエンティティが Hibernate によって管理されているため、entity1 の保存中にエラーが発生した場合、entity2 を保存してはなりません。したがって、ここでの作業単位は 2 つの別個のエンティティで構成されています。両方が保存されるか、どちらも保存されないかのいずれかです。私の現在のコードは次のようになります。

public int saveEntity1()
{
 a =1;
 begin session;
 start tx;
 save entity1;
 commit tx;
    when exception 
    rollback tx;
    a=0;
 return a; 
}

 public int saveEntity2()
 {
 a =1;
 begin session;
 start tx;
 save entity2;
 commit tx;
     when exception 
     rollback tx;
     a=0;
 return a; 
 }

クライアントメソッドでは:

 public void submitData()
 {
  int res = Entity1DAO.saveEntity1();
  if(res==1)
  {
  Entity2DAO.saveEntity2();
  }
 }

クライアント メソッドで if ステートメントを使用する必要がないように、同じトランザクション内で 2 つのエンティティを永続化できますか?

4

1 に答える 1