前言
单数数据源的时代一去不复返,多数据源应用越来越广泛,配置各种连接执行器方便
在不同的情况下进行使用,下面就原生的 jdbcTemplate 进行注入和配置
代码
采用Springboot Bean注入的模式
package XXXXXX;
import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.jdbc.core.JdbcTemplate;
/**
* @Author Windwardbird
* @time 2020/9/27 14:23
* @describeOfFunction: 注入原生的JdbcTemplate
*/
@Configuration
public class PrimitiveDataSourceConfig {
@Primary()
@Bean(name = "primaryDataSource")
@Qualifier("primaryDataSource")
@ConfigurationProperties("spring.datasource.druid.mycat")
public DruidDataSource primaryDataSource() {
return DruidDataSourceBuilder.create().build();
}
@Bean(name = "secondaryDataSource")
@Qualifier("secondaryDataSource")
@ConfigurationProperties("spring.datasource.druid.mysql")
public DruidDataSource secondaryDataSource() {
return DruidDataSourceBuilder.create().build();
}
@Bean(name = "thirdDataSource")
@Qualifier("thirdDataSource")
@ConfigurationProperties("spring.datasource.druid.Oracle")
public DruidDataSource thirdDataSource() {
return DruidDataSourceBuilder.create().build();
}
@Bean(name = "primaryJdbcTemplate")
public JdbcTemplate primaryTemplate(@Qualifier("primaryDataSource") DruidDataSource dataSource) {
return new JdbcTemplate(dataSource);
}
@Bean(name = "secondaryJdbcTemplate")
public JdbcTemplate secondaryTemplate(@Qualifier("secondaryDataSource") DruidDataSource dataSource) {
return new JdbcTemplate(dataSource);
}
@Bean(name = "thirdJdbcTemplate")
public JdbcTemplate secondaryTemplate(@Qualifier(""thirdDataSource") DruidDataSource dataSource) {
return new JdbcTemplate(dataSource);
}
}
项目使用
@Resource(name ="primaryJdbcTemplate")
private JdbcTemplate mycatJdbcTemplate
@Resource(name ="secondaryJdbcTemplate")
private JdbcTemplate mysqlJdbcTemplate
@Resource(name ="thirdJdbcTemplate")
private JdbcTemplate oracleJdbcTemplate
3014



被折叠的 条评论
为什么被折叠?



