spring和mybatis整合进行事务管理
生活随笔
收集整理的這篇文章主要介紹了
spring和mybatis整合进行事务管理
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1、聲明式實(shí)現(xiàn)事務(wù)管理
XML命名空間定義,定義用于事務(wù)支持的tx命名空間和AOP支持的aop命名空間:
?
?
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"xmlns:context="http://www.springframework.org/schema/context"xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd "><!-- 事務(wù)管理器,對mybatis操作數(shù)據(jù)庫 控制。spring使用jdbc的事務(wù)控制類--><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><!-- 數(shù)據(jù)源 :dataSource在dao中配置--><property name="dataSource" ref="dataSource"/></bean><!-- 通知 --><tx:advice id="txAdvice" transaction-manager="transactionManager"><tx:attributes><!-- 傳播行為,規(guī)范開發(fā)接口--><tx:method name="save*" propagation="REQUIRED"/><tx:method name="delete*" propagation="REQUIRED"/><tx:method name="insert*" propagation="REQUIRED"/><tx:method name="update*" propagation="REQUIRED"/><tx:method name="find*" propagation="SUPPORTS" read-only="true"/><tx:method name="select*" propagation="SUPPORTS" read-only="true"/><tx:method name="get*" propagation="SUPPORTS" read-only="true"/></tx:attributes></tx:advice><!-- 調(diào)用通知:aop --><aop:config><aop:advisor advice-ref="txAdvice" pointcut="execution(* edu.mybatis.service.impl.*.*(..))"/></aop:config> </beans>?
<bean id="transactionManager" class="...">用來定義事務(wù)管理器
?
<tx:advice>標(biāo)簽用于事務(wù)通知,用于指定事務(wù),transaction-manager屬性用來指定事務(wù)管理器,并且通過<tx:attributes>方法來指定具體需要攔截的方法
?
<tx:method name="save*">等方法是用來定義攔截一save頭的方法,而且被攔截的方法應(yīng)該配置事務(wù)屬性:propagation="REQUIRED"表示傳播行為是必須的,isolation:表示隔離級別,read-only=“true”,表示事務(wù)只讀
?
<aop:config>聲明進(jìn)行Aop的配置,advice-ref屬性用來指定通知,pointcut:用來定義切點(diǎn)
?
轉(zhuǎn)載于:https://www.cnblogs.com/googlemeoften/p/4699114.html
總結(jié)
以上是生活随笔為你收集整理的spring和mybatis整合进行事务管理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 输入一个正整数,求它各位数的数字之和
- 下一篇: java_web学习(8)会话与状态管