Spring学习笔记(六)基于xml文件方式配置事物

之前提到了使用spring基于注解方式配置事物,它还支持xml文件方式配置事物;

在xml文件配置方式中,我们使用到了事物管理器,AOP,通知等;

首先在配置文件中配置好事务管理器:
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource" ref="dataSource"></property>
</bean>

然后配置一个事物通知:
<tx:advice transaction-manager="txManager" id="txAdvice">
    <tx:attributes>
        <tx:method name="get*" propagation="NOT_SUPPORTED"/>
        <tx:method name="*"/>
    </tx:attributes>
</tx:advice>


transaction-manager="txManager"为通知指定事务管理器;
<tx:method name="get*" propagation="NOT_SUPPORTED"/>表示让get开头的方法不支持事物管理;
后边表示其他的方式支持事物管理

接着在配置aop,拦截指定的业务类:
<aop:config>
    <aop:pointcut expression= "execution(* tk.sweetvvck.service..*.*(..))" id="txPointcut"/>
    <aop:advisor advice-ref="txAdvice" pointcut-ref="txPointcut"/>
</aop:config>

这样我们就完成了基于xml文件方式配置spring事物管理,tk.sweetvvck.service及其子包下的类都将会被拦截,相应方法会被spring管理其事物;

spring容器会为相应的类动态生成代理类来实现aop以及事物管理。


你可能感兴趣的:(spring,AOP,xml,管理)