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")@Primarypublic DataSource testDataSource(){return DataSourceBuilder.create().build();}@Bean(name = "testSqlSessionFactory")@Primarypublic 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")//配置事务@Primarypublic DataSourceTransactionManager testTransactionManager(@Qualifier("testDataSource") DataSource dataSource){return new DataSourceTransactionManager(dataSource);}@Bean(name="testSqlSessionTemplate")@Primarypublic 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
springboot多数据源配置和HikariPool线程池配置相关推荐
- Springboot应用中线程池配置教程(2021版)
前言:日常开发中我们常用ThreadPoolExecutor提供的线程池服务帮我们管理线程,在Springboot中更是提供了@Async注解来简化业务逻辑提交到线程池中执行的过程.由于Springb ...
- SpringBoot2/SpringBoot/Java动态数据源配置、动态连接池配置、多数据源负载均衡
Java动态数据源配置.动态连接池配置.多数据源负载均衡 大家好,今天给大家推荐一个自产的连接池插件.废话不多说,本文接口分为以下主题: 1. 插件开发背景: 2. 插件提供的能力: 3. 插件的使用 ...
- @Async的异步任务多起来了,如何配置多个线程池来隔离任务?
通过上一篇:配置@Async异步任务的线程池的介绍,你应该已经了解到异步任务的执行背后有一个线程池来管理执行任务.为了控制异步任务的并发不影响到应用的正常运作,我们必须要对线程池做好相应的配置,防止资 ...
- 什么?用@Async会内存溢出?看看你的线程池配置了没!
上一篇我们介绍了如何使用@Async注解来创建异步任务,我可以用这种方法来实现一些并发操作,以加速任务的执行效率.但是,如果只是如前文那样直接简单的创建来使用,可能还是会碰到一些问题.存在有什么问题呢 ...
- Java多线程之线程池配置合理线程数
Java多线程之线程池配置合理线程数 目录 代码查看公司服务器或阿里云是几核的 合理线程数配置之CPU密集型 合理线程数配置之IO密集型 1. 代码查看公司服务器或阿里云是几核的 要合理配置线程数首先 ...
- 若依专题 线程池配置
若依项目 | 线程池配置 概括: ruoyi项目中的线程池配置以@bean的方式自定义ThreadPoolTaskExecutor对象.ScheduledExecutorService对象放入Spri ...
- spring定时任务Scheduled与定时任务线程池配置SchedulingConfigurer ,Java
spring定时任务Scheduled与定时任务线程池配置SchedulingConfigurer ,Java spring默认定时任务的使用 package zhangphil.demo;impor ...
- 解决URL存在特殊符号、异步线程池配置、动态加载lib下所有jar包
一.解决URL存在特殊符号|{}?&.URL中包含%2F.URL中包含%5C import lombok.extern.slf4j.Slf4j; import org.springframew ...
- Springboot之@Async异步指定自定义线程池使用
开发中会碰到一些耗时较长或者不需要立即得到执行结果的逻辑,比如消息推送.商品同步等都可以使用异步方法,这时我们可以用到@Async.但是直接使用 @Async 会有风险,当我们没有指定线程池时,他会默 ...
最新文章
- 自然语言处理(nlp)之词袋模型及句子相似度
- Android Gradle 学习笔记(四):Gradle 构建脚本
- 在Chrome 中调试Javascript
- IT运维服务管理中知识
- 某银行省级数据中心IT运维服务体系建设完整思路
- 修改$_env php,Laravel如何友好的修改.env配置文件详解
- Coding: 一亿个数找最大的1000个数
- 如何在XSLT中实现勾选的效果
- Spring Boot 常用注解
- LL1分析构造法_【财经职业教育活动周】分析天平的使用——电气环保部
- 进程、轻量级进程(LWP)、线程
- java.lang.NoClassDefFoundError 怎么解决
- 两个数组各个数相加或相乘变成一个矩阵求第K大
- unicode编码对照表
- Visio Viewer 打开vsd文件
- DDS文档数据库服务
- linux中怎么生成hwaddr,linux 下 hwaddr 和 macaddr的区别
- 5种骗你跳槽的谣言,千万别信!
- Android 显示历史搜索记录
- tecplot云图——数据文本格式2