Spring7种
事务的传播行为
传播定义
单个个体不存在传播行为
至少两个个体才存在传播行为
例
ServerA{
void methodA(){
ServerB.methodB();
}
}
7种传播行为
按照自己理解,分为以下几类
分类 | 事务 | 描述 |
---|
总是以有事务方式运行PROPAGATION_REQUIRED外层有事务加入外层事务,外层没事务新建一个事务
PROPAGATION_MANDATORY外层有事务加入事务,外层没事务抛出异常
总是以非事务方式运行PROPAGATION_NOT_SUPPORTED外层有事务挂起外层事务,以非事务运行
PROPAGATION_NEVER 外层有事务,抛出异常
跟随外层事务状态PROPAGATION_SUPPORTS外层有事务加入外层事务,外层没事务以非事务运行
独立事务PROPAGATION_REQUIRES_NEW不管外层有没有事务,都新建自身独立事务,内外层事务回滚提交 *** 作相互不影响,外层可以看内层的事务状态自行决定外层事务是否回滚
嵌套事务(父子事务)PROPAGATION_NESTED不管外层有没有事务,都新建自身独立事务,外层可以看内层的事务状态自行决定外层事务是否回滚;外层事务回滚,内层事务一定会回滚
评论列表(0条)