本文主要是介绍SpringBoot独立事物控制以及异常问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前言
再myfalse github中有spring控制的独立事物,这里是springBoot我们用下注解采用的独立事物
1、新开启一个事物
@Transactional(propagation = Propagation.REQUIRES_NEW, rollbackFor = Exception.class)
public void keyTransactional(CouponItemGood couponItemGood) {}
2、解释
REQUIRED,注意,这是默认值,也即不进行该参数配置等于配置成REQUIRED。
2.1、REQUIRED的含义是,支持当前已经存在的事务,如果还没有事务,就创建一个新事务。
A调用B,假设调用aMethod前不存在任何事务,那么执行aMethod时会自动开启一个事务,而由aMethod调用bMethod时,由于事务已经存在,因此会使用已经存在的事务(也就是执行aMethod之前创建的那个事务)。
对于这样的配置,如果bMethod过程中发生异常需要回滚,那么aMethod中所进行的所有数据库操作也将同时被回滚,因为这两个方法使用了同一个事务。
2.2、 REQUIRES_NEW的含义是,挂起当前事务,创建一个新事务,如果还没有事务,就简单地创建一个新事务。
首先,REQUIRES_N
这篇关于SpringBoot独立事物控制以及异常问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!