サービス クラスが複数のデータ アクセス オブジェクトを必要とする完全なトランザクションを実現するにはどうすればよいですか。私は次の構造を持っていると仮定します。
現在、dao2 が失敗した場合、dao1 はまだデータベースにコミットされていますが、これは望ましくありません。ただし、DAO を再利用可能にする必要があります。
public class mainService(){
dao1.store(obj1);
dao2.store(obj2);
}
そして、私のダオはこのように書かれています。
ダオ 1
private EntityManager entityManager;
@Transactional
public void store(Object obj1){
entityManager.persist(obj1);
}
ダオ 2
private EntityManager entityManager;
@Transactional
public void store(Object obj2){
entityManager.persist(obj2);
}
助けてください。