在Spring Boot中使用Druid
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.version}</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>${durid.version}</version>
</dependency>
在工程的配置文件做以下的配置:
spring:
#数据库访问配置
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.cj.jdbc.Driver
druid:
url: jdbc:mysql://rm-*******.mysql.rds.aliyuncs.com:3306/hdtoon_disabled
username: dbName
password: dbPassword
initial-size: 10
max-active: 100
min-idle: 10
max-wait: 60000
pool-prepared-statements: true
max-pool-prepared-statement-per-connection-size: 20
time-between-eviction-runs-millis: 60000
min-evictable-idle-time-millis: 300000
validation-query: SELECT 'X' FROM DUAL
test-while-idle: true
test-on-borrow: false
test-on-return: false
stat-view-servlet:
#开启监控页面
enabled: true
url-pattern: /druid/*
allow:
deny:
login-username: admin
login-password: admin
reset-enable: false
filter:
stat:
log-slow-sql: true
slow-sql-millis: 1000
merge-sql: false
wall:
config:
multi-statement-allow: true
# 合并多个DruidDataSource的监控数据
use-global-data-source-stat: true
# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
filters: stat,wall
# 通过connectProperties属性来打开mergeSql功能;慢SQL记录
connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
这样就在Spring Boot中整合了Durid连接池。
在Spring Boot中使用HikariCP
HikariCP是一个高性能的JDBC连接池,基于BoneCP做了不少的改进和优化。
HikariCP的性能远高于c3p0、tomcat等连接池,以致后来BoneCP作者都放弃了维护,在Github项目主页推荐大家使用HikariCP。另外,Spring Boot将在2.0版本中把HikariCP作为其默认的JDBC连接池。
在Spring Boot中使用HikariCP连接池,在工程pom文件引入HikariCP依赖,版本为3.3.1。
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>${HikariCP.version}</version>
</dependency>
然后在工程的配置文件,加上以下配置:
spring:
#数据库访问配置
datasource:
type: com.zaxxer.hikari.HikariDataSource
driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://rm-*******.mysql.rds.aliyuncs.com:3306/hdtoon_disabled
username: dbName
password: dbPassword
总结
本篇文章主要讲解了在SrpingBoot使用数据库连接池,包括Durid和HikariCP。