<aop:config>
<aop:advisor pointcut="execution(* org.ocean.service.impl.*.*(..))"
advice-ref="txAdvice" />
</aop:config>
<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<tx:method name="save*" no-rollback-for="Throwable"
propagation="REQUIRED" />
<tx:method name="update*" rollback-for="Throwable" propagation= "REQUIRED" />
<tx:method name="delete*" />
<tx:method name="modify*" />
<tx:method name="create*" />
<tx:method name="*" rollback-for="Throwable" propagation= "REQUIRED" />
</tx:attributes>
</tx:advice>
<aop:advisor/>利用aop对事务处理进行拦截,pointcut指的是对那些方法或类进行拦截,其中表达式
execution(* org.ocean.service.impl.*.*(..))
,第一个*号只任意返回值,第二个*号指包org.ocean.service.impl下面的任意类,第三个*号类下任意方法,括号众的两点表示对方法 不限制参数,下面的<tx;advice>则指定事务的属性和具体对那些方法执行事务,如定义中所示,将对 save,delete,modify,create和任意方法执行事务