来啦,已经跑了好几圈啦....
Canvas is not supported in your browser.

事务的配置

为什么不用注解配置事务,是因为这样可以统一管理,具体哪些方法满足什么样的方法名就能操作事务

<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource"/> </bean> <tx:advice id="txadvice"> <tx:attributes> <tx:method name="delete*" isolation="DEFAULT" propagation="REQUIRED" rollback-for="java.lang.Exception"/> <tx:method name="update*" isolation="DEFAULT" propagation="REQUIRED" rollback-for="java.lang.Exception"/> <tx:method name="insert*" isolation="DEFAULT" propagation="REQUIRED" rollback-for="java.lang.Exception"/> <tx:method name="find*" read-only="true"/> <tx:method name="get*" read-only="true"/> </tx:attributes> </tx:advice>

<!-- <aop:aspect>
<aop:pointcut expression="execution(* yycg.*.service.impl)" id="aopoint" />
</aop:aspect> --> 这样配置错屋

       切入
        <aop:config>
         <aop:pointcut expression="execution(* yycg.*.service.impl)" id="aopoint" /> //这里可以去掉,如果下面 pointcut="execution(* yycg.*.service.impl.*.*(..))",不是pointcut-ref
        <aop:advisor advice-ref="txadvice" pointcut-ref="aopoint"/> 
        </aop:config>
        </beans>
应该这么配置,
但是aop:config中还有aop:aspect,怎么这么眼熟;
原来在aspectj中是这么配置的,确实如果配置aop:aspect,里面就没有aop:advisor,这一项,而是具体的环绕通知,前置通知等等,事务通知和它们不一样,是有规则的,就是上面需要指定方法,传播行为,等等

 




posted @ 2018-11-30 20:49  fangpengcheng_方鹏程  阅读(131)  评论(0编辑  收藏  举报