Spring——事务管理2 xml方式

一 没有事务

1.环境的搭建

Spring——事务管理2 xml方式

Spring——事务管理2 xml方式

Spring——事务管理2 xml方式

Spring——事务管理2 xml方式

业务层和dao层完成创建

 

2.配置Dao和service交给spring管理

xml的方法需要set方法(构造方法)

Spring——事务管理2 xml方式

Spring——事务管理2 xml方式

3.Dao中注入JDBC模板

Spring——事务管理2 xml方式

传统的方法

Spring——事务管理2 xml方式

spring的方法:

Spring——事务管理2 xml方式

JDBCSupport的部分源码

Spring——事务管理2 xml方式

Spring——事务管理2 xml方式

进一步简化(JDBC模板都可以不用配置)

Spring——事务管理2 xml方式

Spring——事务管理2 xml方式

使用:

Spring——事务管理2 xml方式

4.编写Service层

Spring——事务管理2 xml方式

5.测试

Spring——事务管理2 xml方式

Spring——事务管理2 xml方式

结果:

Spring——事务管理2 xml方式

在没有异常的情况下,是可以正常操作的

二 事务管理

1.编程式事务

(1)配置平台管理器

Spring——事务管理2 xml方式

(2)spring提供了事务管理的模板类

Spring——事务管理2 xml方式

(3)在业务层注入事务管理的模板

Spring——事务管理2 xml方式

Spring——事务管理2 xml方式

(4)编写事务管理的代码

Spring——事务管理2 xml方式

(5)测试

此时就不会有转账转丢了的情况

 

2.声明式事务管理(通过配置实现)---AOP

Spring——事务管理2 xml方式

(1)引入aop的开发包

Spring——事务管理2 xml方式

(2)恢复转账环境

恢复到之前的钱能转丢了的情况(没有事务的情况)

(3)配置事务管理器

Spring——事务管理2 xml方式

(4)配置增强(就是之前的前置后置但是事务的增强是固定的)

Spring——事务管理2 xml方式

到这里切面已经配置好了

拓展

***************************************************************************************************************************************

Spring——事务管理2 xml方式

Spring——事务管理2 xml方式

Spring——事务管理2 xml方式

***************************************************************************************************************************************

(5)AOP的配置

切面完成之后就是将切面应用到目标类当中去

上面tx attributes是规则

下面是具体方法哪个包下的什么方法需要进行增强

 

Spring——事务管理2 xml方式

Spring——事务管理2 xml方式

(6)测试

OK不用写任何代码就能够实现事务的管理