最好记忆事务传播性

一.原有事务传播性的方法

     原来记事务传播性的时候,是死记硬背7种,每次背了就忘背了就忘

PROPAGATION_REQUIRED--支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。


PROPAGATION_SUPPORTS--支持当前事务,如果当前没有事务,就以非事务方式执行。

PROPAGATION_MANDATORY--支持当前事务,如果当前没有事务,就抛出异常。

PROPAGATION_REQUIRES_NEW--新建事务,如果当前存在事务,把当前事务挂起。

PROPAGATION_NOT_SUPPORTED--以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。

PROPAGATION_NEVER--以非事务方式执行,如果当前存在事务,则抛出异常。

 

PROPAGATION_NESTED--嵌套到父事务中,跟着父事务提交而提交,跟着父事务回归而回滚

 

二. 最好记忆法

SpringAPI设计的非常不错,基本知道英文翻译就能知道作用。

required:必须的 说明事务时必须的 没有就新建事务

supports::支持  说明仅仅支持事务 没有事务就以非事务方法执行

mandatory:强制的, 说明一定要有事务,没有事务就抛异常

reuquires_new 必须新建事务,当前有事务,就将事务挂起

not_supported: 不支持事务,如果存在事务就挂起

never:绝不会有是u我 如果存在事务就抛出异常

nested:嵌套,当前有事务,新建一个事务嵌套到父事务中,父事务回归,新建的事务也会回滚

看看上面的方法,只用记住 required(必须的) ,supports(支持),mandatory(强制的), never(绝不会),nested(嵌套)五个简单的单词,再去联想7种情况 那么事务的传播性记住就相对很容易啦。

posted @ 2021-02-07 09:35  DaySurprise  阅读(87)  评论(0)    收藏  举报