您的位置:首页 > 编程语言 > Java开发

SpringBoot2.0学习之集成druid连接池

2019-02-08 19:17 561 查看

SpringBoot2.0学习之集成druid数据库连接池

为什么使用druid?

阿里的druid连接池可以提供强大的监控和扩展功能。

1. 在pom.xml文件中引入依赖

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

2. application.yml 中添加相关配置

### mybatis配置
spring:
datasource:
### 数据库连接配置
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/marklife?useUnicode=true&characterEncoding=utf8&useSSL=false
username: root
password: root123
### 连接池配置
type: com.alibaba.druid.pool.DruidDataSource
druid:
# 初始化连接数
initial-size: 5
# 最小空闲连接数
min-idle: 5
# 最大活跃连接数
max-active: 20
# 最大连接等待超时时间,单位是毫秒(ms)
max-wait: 30000
# 多久检测需要关闭的空闲连接,单位是毫秒
time-between-eviction-runs-millis: 60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
min-evictable-idle-time-millis: 300000
# 验证数据库连接的查询语句,这个查询语句必须是至少返回一条数据的SELECT语句
validation-query: select 1
# 建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。
test-while-idle: true
# 申请连接时执行validationQuery检测连接是否有效,会降低性能
test-on-borrow: false
# 归还连接时执行validationQuery检测连接是否有效,会降低性能
test-on-return: false
# 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。
pool-prepared-statements: false
max-pool-prepared-statement-per-connection-size: 20
# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
filter: stat,wall,slf4j
# 合并多个DruidDataSource的监控数据
use-global-data-source-stat: true
# 通过connectProperties属性来打开mergeSql功能;慢SQL记录
connect-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
### 监控配置
# 配置DruidStatFilter
web-stat-filter:
enabled: true
url-pattern: "/*"
exclusions: "*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*"
# 配置DruidStatViewServlet
stat-view-servlet:
url-pattern: "/druid/*"
# IP白名单(没有配置或者为空,则允许所有访问)
allow: 127.0.0.1
# IP黑名单 (白名单与黑名单同时存在时,黑名单优先)
deny: ""
# 是否开启监控页面页面上的重置功能
reset-enable: false
# 用户名
login-username: admin
# 密码
login-password: admin123

3. 运行项目,测试监控功能

浏览器访问 http://localhost:8080/druid 输入用户名和密码

首页如下:

Druid官方文档:

https://github.com/alibaba/druid/wiki/常见问题

更多参数官方说明文档:

https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter

别人待我如何,是我的因果,

我待别人如何,是我的修行。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: