SpringBoot中数据连接池的配置(tomcat,HikariCP,dbcp2,druid)


文章目录

  • SpringBoot中数据连接池的配置(tomcat,HikariCP,dbcp2,druid)
  • 1. springboot中支持的四种连接池
  • 2. Tomcat数据源连接池的配置
  • 3. HikariCP数据源连接池配置
  • 4. dbcp2数据源参考配置
  • 5. druid数据连接池配置
  • 备注


1. springboot中支持的四种连接池

在默认情况下, 数据库连接可以使用DataSource池进行自动配置。下面是选取一个特定实现的算法:

  • 由于Tomcat数据源连接池的性能和并发, 在tomcat可用时, 我们总是优先使用它。
  • 如果HikariCP可用, 我们将使用它。
  • 如果Commons DBCP可用, 我们将使用它, 但在生产环境不推荐使用它。
  • 最后, 如果Commons DBCP2可用, 我们将使用它。

2. Tomcat数据源连接池的配置

暂空

3. HikariCP数据源连接池配置

## 数据库配置
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
spring.datasource.driverClassName = com.mysql.jdbc.Driver
spring.datasource.url = jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username = root
spring.datasource.password = root
##  Hikari 连接池配置 ------ 详细配置请访问:https://github.com/brettwooldridge/HikariCP
## 最小空闲连接数量
spring.datasource.hikari.minimum-idle=5
## 空闲连接存活最大时间,默认600000(10分钟)
spring.datasource.hikari.idle-timeout=180000
## 连接池最大连接数,默认是10
spring.datasource.hikari.maximum-pool-size=10
## 此属性控制从池返回的连接的默认自动提交行为,默认值:true
spring.datasource.hikari.auto-commit=true
## 连接池母子
spring.datasource.hikari.pool-name=MyHikariCP
## 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认1800000即30分钟
spring.datasource.hikari.max-lifetime=1800000
## 数据库连接超时时间,默认30秒,即30000
spring.datasource.hikari.connection-timeout=30000
spring.datasource.hikari.connection-test-query=SELECT 1

以上配置参考:版权声明:本文为CSDN博主「一介那个书生」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接

4. dbcp2数据源参考配置

# 数据源配置
spring.datasource.url=jdbc:mysql://localhost:3306/adzdb
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.username=acc
spring.datasource.password=acd
 
#连接池配置
spring.datasource.type=org.apache.commons.dbcp2.BasicDataSource
spring.datasource.dbcp2.max-wait-millis=10000
spring.datasource.dbcp2.min-idle=5
spring.datasource.dbcp2.initial-size=5
spring.datasource.dbcp2.validation-query=SELECT x
spring.datasource.dbcp2.connection-properties=characterEncoding=utf8

参考地址:版权声明:本文为CSDN博主「宇神城主」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接

5. druid数据连接池配置

1.写配置文件进行配置
2.引入druid-spring-boot-starter架包进行配置

maven依赖

<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.10</version>
        </dependency>

配置信息

# oracle数据库连接配置
spring.datasource.driver-class-name = oracle.jdbc.OracleDriver
spring.datasource.url = jdbc:oracle:thin:@192.168.1.1:1521:ORCL
spring.datasource.username = admin
spring.datasource.password = 123456
# druid 配置
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.druid.max-active=20
spring.datasource.druid.initial-size = 1
spring.datasource.druid.max-wait = 60000

具体配置请参考:

  1. Druid(新版starter)在SpringBoot下的使用
  2. 阿里DRUID 配置说明及分析
  3. 阿里druid-spring-boot-starter 配置

备注

1.使用数据连接池注意mysql数据库连接的8小时超时问题