在Spring aop中的propagation的7种配置的意思

时间:2023-03-09 03:24:52
在Spring aop中的propagation的7种配置的意思
<tx:method name="find*" read-only="true"  propagation ="NOT_SUPPORTED" />  

     </tx:attributes>  

</tx:advice> 

Spring aop其中就用到了propagation,表示打算对这些方法怎么使用事务,是用还是不用,其中propagation有七种

配置,REQUIRED、SUPPORTS、MANDATORY、REQUIRES_NEW、NOT_SUPPORTED、NEVER、NESTED。默认是REQUIRED。 .七种配置的意思

下面是Spring中Propagation类的事务属性详解:

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

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

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

REQUIRES_NEW:新建事务,如果当前存在事务,把当前事务挂起。

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

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

NESTED:支持当前事务,如果当前事务存在,则执行一个嵌套事务,如果当前没有事务,就新建一个事务。