弄了一个早上的aop 报了一个早上的错误,弄着弄着就好了...RP大爆发...
关于事务,我们用xml配置进行管理配置,有时候觉得xml配置可能会比注解直观, <tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="save*" propagation="REQUIRED" isolation="DEFAULT" />
<tx:method name="add*" propagation="REQUIRED" isolation="DEFAULT" />
<tx:method name="update*" propagation="REQUIRED" isolation="DEFAULT" />
<tx:method name="delete*" propagation="REQUIRED" isolation="DEFAULT" />
<tx:method name="batch*" propagation="REQUIRED" isolation="DEFAULT" />
<tx:method name="get*" propagation="REQUIRED" isolation="DEFAULT" read-only="true" />
<tx:method name="load*" propagation="REQUIRED" isolation="DEFAULT" read-only="true" />
<tx:method name="find*" propagation="REQUIRED" isolation="DEFAULT" read-only="true" />
</tx:attributes>
</tx:advice>
<!-- 以AspectJ方式 定义 AOP -->
<aop:config>
<aop:pointcut id="affectMethods"
expression="execution(* cn.que.open.service.*.*.*(..))" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="affectMethods" />
</aop:config>
容易吃错的是expression表达式:在包下cn.que.open.service包+自定义包+类名下的全部方法:如下
cn.que.open.service.user