Java 事务回滚(执行某方法时)PlatformTransactionManager

利用 PlatformTransactionManager 可做到手动控制事务回滚,

本示例是在Service层注入

    @Resource
    private PlatformTransactionManager transactionManager;

在需要进行事务操作前初始化事务


@Resource
private PlatformTransactionManager transactionManager;
 
TransactionStatus status = null;
// 手动开启事务初始化
status = transactionManager.getTransaction(new DefaultTransactionDefinition());
//操作
 try{
    // 数据库完成操作后(例如业务上需先删除数据,再新增)
    
    // 操作无异常:提交事务
    transactionManager.commit(status);

  }catch (Exception e){

     // 捕获异常时 事务回滚(避免先删除了数据在后续的操作中报错使得新增失败,而数据又被删了)
    transactionManager.rollback(status);
   
}



方法示例:先初始化事务1,进行数据库操作时,若无异常,提交事务 2.。若捕获异常,回退事务 3。

结束~

有用上的麻烦给点个赞哈哈!

 


版权声明:本文为Alexis_CSDN原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。