springboot使用多数据源以及配置

1. 首先在application中配置数据源地址

my.datasource.koi.type=com.alibaba.druid.pool.DruidDataSource
my.datasource.koi.url=jdbc:mysql://localhost:3306/?useUnicode=true&characterEncoding=utf-8&useSSL=true
my.datasource.koi.username=root
my.datasource.koi.password=123456
my.datasource.koi.driverClassName=com.mysql.jdbc.Driver

  

2. 在@Bean中 new DataSource的地址空间

@Configuration
public class KOIDataSourceConfig {

    @Resource
    private DataSourceFactory dataSourceFactory;

    @Bean(name = "koiDataSource")
    @ConfigurationProperties(prefix = "my.datasource.koi")
    public DruidDataSource createDataSource() {
        return dataSourceFactory.create();
    }
    // dataSourceFactory.create() : DruidDataSource dataSource = new DruidDataSource();

    @Bean(name = "jdbcTemplate")
    public JdbcTemplate createSqlSessionTemplate(@Qualifier("koiDataSource") DruidDataSource druidDataSource) {
        return new JdbcTemplate(druidDataSource);
    }
}

  

3.  在Service中直接使用即可

@Service
public class KOISchedulerImpl implements KOIScheduler{

    @Resource
    private JdbcTemplate jdbcTemplate;

    @Transactional
    @Override
    public void set_task_and_run(SQLPool pool, String config_path) {

        ExecuteSQL.prepare_and_execut_sql(pool, config_path);

    }

    @Transactional
    @Override
    public void startSchedulerTaskByDruid(String configPath) {
        jdbcTemplate.execute("INSERT INTO mydata.`test` (id) VALUE(1);");
    }
}

  

猜你喜欢

转载自www.cnblogs.com/ruili07/p/10106750.html