springboot多数据源配置和HikariPool线程池配置

配置类:

注意 @Primary 注解,他可以理解为优先选择,这下面的代码是一个主要连接,如果需要再加入一个连接的话复制以下代码修改name 吧@Primary注解去掉就行了。
注意spring.datasource.test 是后面配置的

@Configuration
@MapperScan(basePackages = {"mapper地址"},sqlSessionFactoryRef = "testSqlSessionFactory")
public class OADataSourceConfig {

    @Bean(name="testDataSource")//注入到这个容器
    @ConfigurationProperties(prefix="spring.datasource.test")
    @Primary
    public DataSource testDataSource(){
        return DataSourceBuilder.create().build();
    }

    @Bean(name = "testSqlSessionFactory")
    @Primary
    public SqlSessionFactory testSqlSessionFactory(@Qualifier("testDataSource") DataSource dataSource)throws Exception{
        SqlSessionFactoryBean bean=new SqlSessionFactoryBean();
        org.apache.ibatis.session.Configuration configuration = new org.apache.ibatis.session.Configuration();
        configuration.setCallSettersOnNulls(true);
        bean.setConfiguration(configuration);
        bean.setDataSource(dataSource);
        return bean.getObject();
    }

    @Bean(name="testTransactionManager")//配置事务
    @Primary
    public DataSourceTransactionManager testTransactionManager(@Qualifier("testDataSource") DataSource dataSource){
        return new DataSourceTransactionManager(dataSource);
    }

    @Bean(name="testSqlSessionTemplate")
    @Primary
    public SqlSessionTemplate testSqlSessionTemplate(@Qualifier("testSqlSessionFactory") SqlSessionFactory sqlSessionFactory) {
        return new SqlSessionTemplate(sqlSessionFactory);
    }
}

application.properties配置

如果配置多个数据库连接HikariPool连接池也要配置多个。

#数据库配置
spring.datasource.test.driver-class-name=oracle.jdbc.OracleDriver
spring.datasource.test.jdbc-url=jdbc:oracle:thin:@数据库连接地址
spring.datasource.test.username=用户名
spring.datasource.test.password=密码

#配置连接池HikariPool
#池中维护的最小空闲连接数
spring.datasource.test.minimum-idle=5
#连接池中允许的最大连接数
spring.datasource.test.maximum-pool-size=25
#一个连接idle状态的最大时长(毫秒),
spring.datasource.test.idle-timeout=60000
#连接池名称,默认HikariPool-1
spring.datasource.test.pool-name=HikariPool-oa
#连接最大存活时间.不等于0且小于30秒,会被重置为默认值30分钟.
spring.datasource.test.max-lifetime=300000
#连接超时时间:毫秒,小于250毫秒,否则被重置为默认值30秒
spring.datasource.test.connection-timeout=30000
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值