天天看点

Spring的事务传播特性

PROPAGATION_REQUIRED

Support a current transaction; create a new one if none exists.  支持一个当前事务;如果不存在,创建一个新的。

This is typically the default setting of a transaction definition, and typically defines a transaction synchronization scope.

这通常是默认设置事务的定义,通常定义了事务同步范围。

PROPAGATION_SUPPORTS

Support a current transaction; execute non-transactionally if none exists. 

支持当前事务;如果不存在当前事务则执行非事务。

PROPAGATION_NOT_SUPPORTED

Do not support a current transaction; rather always execute non-transactionally. 不执行当前事务;而是总是执行非事务

PROPAGATION_REQUIRES_NEW

Create a new transaction, suspending the current transaction if one exists. 

创建一个新的事务,如果存在当前事务的话暂停(挂起)当前事务 。

PROPAGATION_NESTED

Execute within a nested transaction if a current transaction exists 

如果当前存在事务的话,执行一个嵌套的事务

PROPAGATION_NEVER

Do not support a current transaction; throw an exception if a current transaction exists. 

不支持当前事务;如果存在当前事务则抛出一个异常

PROPAGATION_MANDATORY

Support a current transaction; throw an exception if no current transaction exists.  

支持当前事务;如果不存在当前事务则抛出一个异常

继续阅读