Spring的事务传播规则:
Spring的事务传播分为以下几种:PROPAGATION_MANDATORY,PROPAGATION_NESTED,PROPAGATION_NEVER,PROPAGATION_NOT_SUPPORTED,PROPAGATION_REQUIRED,PROPAGATION_REQUIRES_NEW,PROPAGATION_SUPPORTS.
PROPAGATION_MANDATORY:表示该方法必须运行在一个事务中。如果当前事务不存在,则抛出异常。
PROPAGATION_NESTED:如果存在事务,则该方法运行在一个嵌套的事务中;如果不存在,则和REQUIRED一样;
PROPAGATION_NEVER:表示该方法不应该运行在一个事务的上下文环境中。如果存在事务,则会抛出异常。
PROPAGATION_NOT_SUPPORTED:表示该方法不应该在一个事务中运行。如果一个现有的事务正在运行,则在该方法的运行期被挂起。
PROPAGATION_REQUIRED:表示该方法必须运行在一个事务中。如果一个现有事务正在运行中,那么该方法将运行在该现有事务中,否则重新开始一个新事务。
PROPAGATION_REQUIRES_NEW:表示当前方法必须运行在他自己的事务里。它将启动一个新的事务,如果存在在运行的现有事务,则被挂起。
PROPAGATION_SUPPORTS:当前方法不需要事务处理环境。但如果存在一个现有的事务,这个方法可以在现有的事务中运行。

674

被折叠的 条评论
为什么被折叠?



