其他分享
首页 > 其他分享> > Spring7种事务的传播行为

Spring7种事务的传播行为

作者:互联网

传播定义

单个个体不存在传播行为
至少两个个体才存在传播行为

ServerA{
	void methodA(){
		ServerB.methodB();
	}
}

7种传播行为

按照自己理解,分为以下几类

分类事务解释
总是以有事务方式运行PROPAGATION_REQUIRED外层有事务加入外层事务,外层没事务新建一个事务
总是以有事务方式运行PROPAGATION_MANDATORY外层有事务加入事务,外层没事务抛出异常
总是以非事务方式运行PROPAGATION_NOT_SUPPORTED外层有事务挂起外层事务,以非事务运行
总是以非事务方式运行PROPAGATION_NEVER外层有事务,抛出异常
跟随外层事务状态PROPAGATION_SUPPORTS外层有事务加入外层事务,外层没事务以非事务运行
独立事务PROPAGATION_REQUIRES_NEW不管外层有没有事务,都新建自身独立事务,内外层事务回滚提交操作相互不影响,外层可以看内层的事务状态自行决定外层事务是否回滚
父子事务PROPAGATION_NESTED不管外层有没有事务,都新建自身独立事务,内层事务回滚提交不会影响外层事务,外层事务回滚提交会直接影响到内层事务

标签:回滚,事务,外层,传播,PROPAGATION,以非,Spring7,运行
来源: https://blog.csdn.net/qq_40126611/article/details/122201064