SpringBoot @Transactional 中捕获异常并回滚解决方法

1.spring boot入口函数添加@EnableTransactionManagement注解
(默认是开启的)
2.

@Transactional(rollbackFor = Exception.class)
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly()

@Transactional(rollbackFor = Exception.class)
public void test() {  
     try {  
        updata();  
        updata2();  
     } catch (Exception e) {  
          e.printStackTrace();     
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();//如果updata2()抛了异常,updata()会回滚,不影响事务正常执行                                                                              
     } 

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