Spring2.5 的事物配置:
<!-- 配置事务通知 -->
<tx:advice id="txAdvice" transactionManager=txManager>
<!--
REQUIRED:表示当前方法必须运行在一个事物中,没有事物则创建一个。
SUPPORTS:表示当前方法不需要事物
-->
<tx:attributes>
<tx:method name="save*" propagation="REQUIRED"/>
<tx:method name="del*" propagation="REQUIRED"/>
<tx:method name="update*" propagation="REQUIRED"/>
<tx:method name="do*" propagation="REQUIRED"/>
<tx:method name="*" propagation="SUPPORTS" read-only="true"/>
</tx:attributes>
</tx:advice>
<!-- 配置面向切面 -->
<aop:config>
<!--
定义一个切面,
并将该切面和事物通知结合
-->
<aop:pointcut id="aaaa" expression="execution(*com.biz.*.*)(..)"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="aaaa"/>
</aop:config>
<!-- 配置事务通知 -->
<tx:advice id="txAdvice" transactionManager=txManager>
<!--
REQUIRED:表示当前方法必须运行在一个事物中,没有事物则创建一个。
SUPPORTS:表示当前方法不需要事物
-->
<tx:attributes>
<tx:method name="save*" propagation="REQUIRED"/>
<tx:method name="del*" propagation="REQUIRED"/>
<tx:method name="update*" propagation="REQUIRED"/>
<tx:method name="do*" propagation="REQUIRED"/>
<tx:method name="*" propagation="SUPPORTS" read-only="true"/>
</tx:attributes>
</tx:advice>
<!-- 配置面向切面 -->
<aop:config>
<!--
定义一个切面,
并将该切面和事物通知结合
-->
<aop:pointcut id="aaaa" expression="execution(*com.biz.*.*)(..)"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="aaaa"/>
</aop:config>