快捷搜索: 王者荣耀 脱发

[spring] 事务管理配置文件配置文件

搭配使用 dao层配置文件(applicationContext-dao.xml):

service层配置文件(applicationContext-service.xml):

事务管理配置文件用于aop相关的配置 文件名:applicationContext-trans.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
	http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd
	http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
	http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.0.xsd">
	<!-- 配置事物管理器的切面 -->
	<bean id="transactionMananger" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<property name="dataSource" ref="dataSource"/>
	</bean>

	<!-- 配置事物传播行为 :其实就是那些方法应该受什么样的事物控制-->
	<tx:advice id="advice" transaction-manager="transactionMananger">
		<tx:attributes>
			<tx:method name="add*" propagation="REQUIRED"/>
			<tx:method name="modify*" propagation="REQUIRED"/>
			<tx:method name="update*" propagation="REQUIRED"/>
			<tx:method name="dorp*" propagation="REQUIRED"/>
			<tx:method name="del*" propagation="REQUIRED"/>
			<tx:method name="find*" read-only="true"/>
		</tx:attributes>
	</tx:advice>

	<!-- 那些类下的方法需要参与到当前的事物管理中 。配置切点 -->
	<aop:config>
		<aop:advisor advice-ref="advice" pointcut="execution(* com..service.*.*(..))"/>
	</aop:config>

</beans>
经验分享 程序员 微信小程序 职场和发展