阶段3 2.Spring_10.Spring中事务控制_8 spring基于纯注解的声明式事务控制

Posted wangjunwei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了阶段3 2.Spring_10.Spring中事务控制_8 spring基于纯注解的声明式事务控制相关的知识,希望对你有一定的参考价值。

新建项目
技术图片

把之前项目src下的内容全部复制过来
技术图片

技术图片
pom.xml内复制过来
技术图片
技术图片

开始配置

新建一个config的包,然后再新建配置文件类SpringConfiguration
技术图片

@Configuration这个注解是可写可不写的。

这个类会做为字节码的参数传给ApplicationContext
技术图片

@ComponentScan配置要扫描的包

技术图片

@Import

但是这个Import要导谁呢?
技术图片

新建JdbcConfig类
技术图片

技术图片
这一就可以通过Import导入JdbcConfig这个类
技术图片
xml里面扫描包的配置可以省略掉了。可以删除
技术图片

jdbcConfig

下面这两块的内容,我们就可以配置到JdbcConfig这个类里面了
技术图片
创建一个createJdbcTempalte里面需要一个dataSource类型的参数
技术图片
DataSource需要导包,这个包可能需要自己手动导入
技术图片

技术图片
现在缺少的就是DataSource。
同时让他进容器也需要加上@Bean的注解
技术图片
这四个变量我们可以在上面定义
技术图片
都使用@Value注解,里面使用Spring的EL表达式
技术图片

创建配置文件jdbcConfigProperties


技术图片
技术图片

@PropertySource注解


技术图片

bean.xml内这里就可以删除了
技术图片

开启注解事物的支持

技术图片
这样这段就可以删除了。
技术图片

事物配置

技术图片
定义创建TransactionManager的方法,传入一个dataSource数据源
技术图片
让它进Spring容器就加上@Bean的注解
技术图片
bean.xml内的这两行代码就可以删除掉。
技术图片

删除整个bean.xml

技术图片

SpringConfiguration内再导入TransactionConfig

技术图片

修改测试类

修改前的配置
技术图片
修改为注解的方式
技术图片
数据库默认的初始值
技术图片
默认异常存在
技术图片
运行我们的测试类
技术图片
技术图片
事务被控制住了
技术图片

把异常去掉
技术图片
可以正常转账成功
技术图片

以上就是基于纯注解的配置

开启spring注解事务的支持
技术图片

这样基于声明事务就告一段落了。


 

以上是关于阶段3 2.Spring_10.Spring中事务控制_8 spring基于纯注解的声明式事务控制的主要内容,如果未能解决你的问题,请参考以下文章

阶段3 2.Spring_10.Spring中事务控制_5 spring事务控制的代码准备

阶段3 2.Spring_10.Spring中事务控制_9 spring编程式事务控制1-了解

阶段3 2.Spring_10.Spring中事务控制_7 spring基于注解的声明式事务控制

阶段3 2.Spring_10.Spring中事务控制_8 spring基于纯注解的声明式事务控制

阶段3 2.Spring_10.Spring中事务控制_11 spring5新特性的介绍

阶段3 2.Spring_07.银行转账案例_4 编写事务管理工具类并分析连接和线程解绑