Spring基于纯注解的声明式事务控制

Posted

tags:

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

SpringConfiguration.java

 1 /**
 2  * spring的配置类,相当于bean.xml
 3  */
 4 @Configuration
 5 @ComponentScan("com.fanxian")
 6 @Import({JdbcConfig.class,TransactionConfig.class})
 7 @PropertySource("jdbcConfig.properties")
 8 @EnableTransactionManagement
 9 public class SpringConfiguration {
10 }

TransactionConfig.java

 1 /**
 2  * 和事务相关的配置类
 3  */
 4 public class TransactionConfig {
 5 
 6     /**
 7      * 用于创建事务管理器对象
 8      * @param dataSource
 9      * @return
10      */
11     @Bean(name="transactionManager")
12     public PlatformTransactionManager createTransactionManager(DataSource dataSource){
13         return new DataSourceTransactionManager(dataSource);
14     }
15 }

JdbcConfig.java

 

 1 /**
 2  * 和连接数据库相关的配置类
 3  */
 4 public class JdbcConfig {
 5 
 6     @Value("${jdbc.driver}")
 7     private String driver;
 8 
 9     @Value("${jdbc.url}")
10     private String url;
11 
12     @Value("${jdbc.username}")
13     private String username;
14 
15     @Value("${jdbc.password}")
16     private String password;
17 
18     /**
19      * 创建JdbcTemplate
20      * @param dataSource
21      * @return
22      */
23     @Bean(name="jdbcTemplate")
24     public JdbcTemplate createJdbcTemplate(DataSource dataSource){
25         return new JdbcTemplate(dataSource);
26     }
27 
28     /**
29      * 创建数据源对象
30      * @return
31      */
32     @Bean(name="dataSource")
33     public DataSource createDataSource(){
34         DriverManagerDataSource ds = new DriverManagerDataSource();
35         ds.setDriverClassName(driver);
36         ds.setUrl(url);
37         ds.setUsername(username);
38         ds.setPassword(password);
39         return ds;
40     }

 

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

Spring 事务控制 -- 基于注解的声明式事务控制

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

Spring AOP源码剖析:Spring声明式事务控制

Spring AOP源码剖析:Spring声明式事务控制

spring基于注解的声明式事务控制

spring基于注解的声明式事务控制配置