ITPub博客

首页 > Linux操作系统 > Linux操作系统 > spring2.5事务&aop (3)

spring2.5事务&aop (3)

原创 Linux操作系统 作者:seablue_xj 时间:2008-05-17 09:17:55 0 删除 编辑

配置事务:

<tx:advice id="txAdvice" transaction-manager="txManager">

       <tx:attributes>

           <tx:method name="get*" read-only="true" />

           <tx:method name="deleteCustomer" />

           <tx:method name="saveCustomer" timeout="2"

              no-rollback-for="ArithmeticException" propagation="REQUIRES_NEW"/>

       tx:attributes>

    tx:advice>

 

切面的声明:

<aop:config>

       <aop:pointcut id="fooServiceOperation"

           expression="execution(* springTransaction.service.FooService.*(..))" />

       <aop:advisor advice-ref="txAdvice"

           pointcut-ref="fooServiceOperation" order=""/>

 

       <aop:aspect ref="aspectJ">

           <aop:around method="AroundProceeding" pointcut-ref="around" />

           <aop:after-throwing method="afterThrowing"

              pointcut-ref="throw" throwing="ex"/>

             

             

           <aop:pointcut id="around"

              expression="target(springTransaction.service.FooService)" />

           <aop:pointcut id="throw"

              expression="execution(public * *(..))" />

          

       aop:aspect>

    aop:config>

 

在测试类中,同时插入两条相同的信息之后,数据库会有错误抛出,程序会捕捉这种错误并且记录在文件当中

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7528999/viewspace-274654/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2007-12-21

  • 博文量
    10
  • 访问量
    10912