您的位置:首页 > 编程语言 > Java开发

<tx:method/> 有关的设置

2015-05-30 15:43 495 查看
 <tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>

           <!-- 读取操作 -->
<tx:method name="load*" propagation="REQUIRED" isolation="DEFAULT" read-only="true"/>
<tx:method name="get*" propagation="REQUIRED" isolation="DEFAULT" read-only="true"/>
<tx:method name="find*" propagation="REQUIRED" isolation="DEFAULT" read-only="true"/>
</tx:attributes>
</tx:advice>
SPRING中PROPAGATION类的事务属性详解

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

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

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

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

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

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

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

<tx:method/>
 有关的设置


属性是否需要?默认值描述
name
与事务属性关联的方法名。通配符(*)可以用来指定一批关联到相同的事务属性的方法。如:
'get*'
'handle*'
'on*Event'
等等。

propagation
REQUIRED事务传播行为
isolation
DEFAULT事务隔离级别
timeout
-1事务超时的时间(以秒为单位)
read-only
false事务是否只读?
rollback-for
将被触发进行回滚的 
Exception(s)
;以逗号分开。 如:
'com.foo.MyBusinessException,ServletException'


no-rollback-for
不 被触发进行回滚的 
Exception(s)
;以逗号分开。 如:
'com.foo.MyBusinessException,ServletException'


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring tx txmethod 事务