Spring事務配置-註解篇
阿新 • • 發佈:2018-12-21
事務註解,可以作用在類或者public方法上,寫在類上的時候,對該類下的所有的public的方法有用。假如方法上加了final修飾,將會導致事務不可用。
具體參考:https://blog.csdn.net/bao19901210/article/details/41724355
舉例說明:myBatis為例 基於註解的宣告式事務管理配置@Transactional
spring.xml
<span style="background-color: rgb(255, 255, 255);"><span style="background-color: rgb(255, 204, 153);"><!-- mybatis config --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="configLocation"> <value>classpath:mybatis-config.xml</value> </property> </bean> <!-- mybatis mappers, scanned automatically --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage"> <value> com.baobao.persistence.test </value> </property> <property name="sqlSessionFactory" ref="sqlSessionFactory" /> </bean> <!-- 配置spring的PlatformTransactionManager,名字為預設值 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource" /> </bean> <!-- 開啟事務控制的註解支援 --> <tx:annotation-driven transaction-manager="transactionManager"/></span></span>
新增tx名字空間
<span style="background-color: rgb(255, 255, 255);"><span style="background-color: rgb(255, 204, 153);">xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd"</span></span>