20_Spring_零XML事务控制
20_Spring_零XML事务控制
创建配置类
- package com.msb.config;
- import com.alibaba.druid.pool.DruidDataSource;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.context.annotation.Bean;
- import org.springframework.context.annotation.ComponentScan;
- import org.springframework.context.annotation.Configuration;
- import org.springframework.context.annotation.PropertySource;
- import org.springframework.jdbc.core.JdbcTemplate;
- import org.springframework.jdbc.datasource.DataSourceTransactionManager;
- import org.springframework.transaction.PlatformTransactionManager;
- import
org.springframework.transaction.annotation.EnableTransactionManagement; - import javax.sql.DataSource;
- /**
-
- @Author: Ma HaiYang
-
- @Description: MircoMessage:Mark_7001
- */
- @Configuration // 配置类标志注解
- @ComponentScan(basePackages = "com.msb") // spring包扫描
- @PropertySource("classpath:jdbc.properties") // 读取属性配置文件
- @EnableTransactionManagement // 开启事务注解
- public class SpringConfig {
- @Value("${jdbc_driver}")
- private String driver;
- @Value("${jdbc_url}")
- private String url;
- @Value("${jdbc_username}")
- private String username;
- @Value("${jdbc_password}")
- private String password;
- /创建数据库连接池/
- @Bean
- public DruidDataSource getDruidDataSource(){
- DruidDataSource dataSource=new DruidDataSource();
- dataSource.setDriverClassName(driver);
- dataSource.setUrl(url);
- dataSource.setUsername(username);
- dataSource.setPassword(password);
- return dataSource;
- }
- /创建JdbcTemplate对象/
- @Bean
- public JdbcTemplate getJdbcTemplate(DataSource dataSource){
- JdbcTemplate jdbcTemplate=new JdbcTemplate();
- jdbcTemplate.setDataSource(dataSource);
- return jdbcTemplate;
- }
- /创建事务管理器/
- @Bean
- public PlatformTransactionManager
getPlatformTransactionManager(DataSource dataSource){ - DataSourceTransactionManager transactionManager =new
DataSourceTransactionManager(); - transactionManager.setDataSource(dataSource);
- return transactionManager;
- }
- }
测试代码
- @Test()
- public void testTransaction3(){
- ApplicationContext context =new
AnnotationConfigApplicationContext(SpringConfig.class); - AccountService accountService =
context.getBean(AccountService.class); - int rows = accountService.transMoney(1, 2, 100);
- System.out.println(rows);
- }

浙公网安备 33010602011771号