新建项目
把之前项目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注解事务的支持
这样基于声明事务就告一段落了。