public class FooService
{
   private PlatformTransactionManager transactionManager;
   
   public void serviceMethod()
   {
   
		TransactionDefinition definition=...;
		TransactionStatus txStatus=getTransactionManager().getTransaction(definition);
		
		try{
		
		 // dao1.doDataAccess();
		 // dao2.doDataAccess();
		 // ...
		} catch(DataAccessException e){
		 getTransactionManager().rollback(txStatus);
		 throw e;
		}catch(OtherNecessaryException e){
		 getTransactionManager().rollback(txStatus);
		 throw e;
		} 
   
   }

   public PlatformTransactionManager getTransactionManager(){
    return transactionManager;
   }
  
   public void setTransactionManager(PlatformTransactionManager transactionManager){
    this.transactionManager=transactionManager;
   }
}

  

相关文章:

  • 2022-01-23
  • 2022-12-23
  • 2021-07-07
  • 2021-11-15
  • 2022-02-12
  • 2021-10-20
  • 2022-12-23
猜你喜欢
  • 2021-07-30
  • 2021-11-05
  • 2022-12-23
  • 2021-07-12
  • 2022-12-23
  • 2022-02-21
相关资源
相似解决方案