Spring的xml配置文件中tx命名空间
一,spring配置文件的tx命名空间
引入tx命名空间
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xmlns:aop="/schema/aop"xmlns:tx="/schema/tx"xsi:schemaLocation="/schema/beans /schema/beans/spring-beans.xsd/schema/aop /schema/aop/spring-aop.xsd/schema/tx /schema/tx/spring-tx.xsd"></bean>
二,tx命名空间对应的标签和属性
<tx:advice id="" transaction="" ></tx:advice >
:该标签用来配置事务通知,transaction属性用来指定切面类(平台事务管理器),jdbcTemplate和MyBatis的平台事务管理器为org.springframework.jdbc.datasource.DataSourceTransactionManager
<tx:advice id="transactionManager" transaction="org.springframework.jdbc.datasource.DataSourceTransactionManager"></tx:advice>
<tx:attributes ></tx:attributes >
:设置事务的属性信息的
<bean id="transaction" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><tx:advice id="txAdvice" transaction-manager="transaction"><tx:attributes><tx:method name="" isolation="" propagation="" read-only=""></tx:method><tx:method name="" isolation="" propagation="" read-only=""></tx:method><tx:method name="" isolation="" propagation="" read-only=""></tx:method></tx:attributes></tx:advice>
<aop:advisor ></aop:advisor >
:配置事务的aop织入
<aop:config><aop:pointcut id="txPointcut" expression=(execution(* com.app.aop.*.*(..)))></aop:pointcut><aop:advisor advice-ref="txAdvice" pointcut-ref="txPointcut" ></aop:advisor></aop:config>
<tx:annotation-driven transaction-manager="平台事务管理器">
:如果用注解配置事务管理,那么要配置事务的注解驱动
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><tx:annotion-driven transaction-manager="transactionManager"/>