阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤

环境搭建

新建工程
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第1张图片
把对应的依赖复制过来
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第2张图片
src下内容复制
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第3张图片

配置spring中的声明事物

找到bean.xml开始配置

配置事物管理器


里面需要注入DataSource

2-配置事物通知

需要先导入事务约束

事务和aop这里一起导入
file:///H:/BaiDu/%E9%BB%91%E9%A9%AC%E4%BC%A0%E6%99%BAJavaEE57%E6%9C%9F%202019%E6%9C%80%E6%96%B0%E5%9F%BA%E7%A1%80+%E5%B0%B1%E4%B8%9A+%E5%9C%A8%E8%81%8C%E5%8A%A0%E8%96%AA/%E8%AE%B2%E4%B9%89+%E7%AC%94%E8%AE%B0+%E8%B5%84%E6%96%99/%E4%B8%BB%E6%B5%81%E6%A1%86%E6%9E%B6/32.%E4%BC%9A%E5%91%98%E7%89%88(2.0)-%E5%B0%B1%E4%B8%9A%E8%AF%BE(2.0)-Spring/spring/spring_day01/%E8%B5%84%E6%96%99/spring-framework-5.0.2.RELEASE-dist/spring-framework-5.0.2.RELEASE/docs/spring-framework-reference/data-access.html#spring-data-tier
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第4张图片
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第5张图片
 

这样就都导入进来了。
配置事物的通知需要用到标签 tx:advice

id是唯一标识,属性就叫做transaction-manager
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第6张图片
这里可以直接选择上面引用的


阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第7张图片

3-配置aop通用切入点表达式

阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第8张图片

4-建立事务通知和切入点表达式的关系


现在有了通知,通知里面有提交和回滚的方法
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第9张图片
他们两个需要建立关系才能对方法进行增强
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第10张图片
使用aop:advisor这个标签
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第11张图片

5-配置事务的属性


阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第12张图片

阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第13张图片
transfer是我们业务层接口中的一个方法,它有一些实现
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第14张图片
有这些属性


阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第15张图片
星是个通配符。上面的全通配,下面的部分能匹配。
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第16张图片
优先级,下面的要高于上面

测试

当前实现类里面有异常

数据改回两个一千
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第17张图片
运行测试方法
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第18张图片
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第19张图片
事务被控制住了。金额没有发生改变。
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第20张图片

当用了这个切入点表达式,我们的项目中这个配置写一次。项目中再也没有实物的问题干扰我们了。
这就是声明式事务的好处
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤_第21张图片

转载于:https://www.cnblogs.com/wangjunwei/p/11370132.html

你可能感兴趣的:(阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤)