Spring框架教程
Spring IOC控制反转
Spring AOP面向切面编程
Spring集成MyBatis
Spring事务
Spring与Web

使用AspectJ的AOP配置管理事务

使用XML配置事务代理的方式的不足是,每个目标类都需要配置事务代理。当目标类较多,配置文件会变得非常臃肿。

使用XML配置顾问方式可以自动为每个符合切入点表达式的类生成事务代理。其用法很简单,只需将前面代码中关于事务代理的配置删除,再替换为如下内容即可。

Step1:复制项目

复制trans_sale项目,并重命名为trans_sal_aspectj。在此基础上修改。

Step2:maven依赖pom.xml

新加入aspectj的依赖坐标

<dependency>
	<groupId>org.springframework</groupId>
	<artifactId>spring-aspects</artifactId>
	<version>4.3.16.RELEASE</version>
</dependency>

Step3:在容器中添加事务管理器

Step4:配置事务通知

为事务通知设置相关属性。用于指定要将事务以什么方式织入给哪些方法。

例如,应用到buy方法上的事务要求是必须的,且当buy方法发生异常后要回滚业务。

Step5:配置增强器

指定将配置好的事务通知,织入给谁。

Step6:修改测试类

测试类中要从容器中获取的是目标对象。

全部教程