SpringBoot整合Druid连接池并打开监控页

运维 数据库运维
项目整合完MybatisPlus、Mysql之后,接下来就该接入一个数据库连接池了。这项技术能明显提高对数据库操作的性能。

项目整合完MybatisPlus、Mysql之后,接下来就该接入一个数据库连接池了。数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库操作的性能。

框架选择上我选择了Druid(德鲁伊)连接池,性能不错,功能全面。

首先在pom中引入

<!-- 数据库连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.8</version>
</dependency>

然后添加配置

spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
druid:
url: jdbc:mysql://localhost:3306/demo?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
username: demo
password: 123456
# 初始连接数
initialSize: 5
# 最小连接池数量
minIdle: 10
# 最大连接池数量
maxActive: 20
# 配置获取连接等待超时的时间
maxWait: 60000
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
timeBetweenEvictionRunsMillis: 60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
minEvictableIdleTimeMillis: 300000
# 配置一个连接在池中最大生存的时间,单位是毫秒
maxEvictableIdleTimeMillis: 900000
# 配置检测连接是否有效
validationQuery: SELECT 1 FROM DUAL
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
webStatFilter:
enabled: true
statViewServlet:
enabled: true
# 设置白名单,不填则允许所有访问
allow:
url-pattern: /druid/*
# 控制台管理用户名和密码
login-username: druid
login-password: druid
filter:
stat:
enabled: true
# 慢SQL记录
log-slow-sql: true
slow-sql-millis: 1000
merge-sql: true
wall:
config:
multi-statement-allow: true

在接口中写一个查询

List<User> userList = userMapper.selectList(null);

userList.forEach(System.out::println);

启动项目后打开

http://localhost:9999/druid/login.html,登录的账号密码使用配置文件中指定的账号密码

登录

执行几次数据库请求,查看SQL监控

SQL监控

一切表现正常,集成完成。

责任编辑:姜华 来源: 今日头条
相关推荐

2020-02-03 15:15:27

Druid连接池性能超出竞品

2023-09-01 07:31:24

2019-12-30 15:30:13

连接池请求PHP

2011-09-08 10:30:42

Druid数据库连接池

2022-02-17 13:32:04

SpringBootSQL连接池

2022-05-13 07:31:58

数据库连接池druid

2023-09-07 11:09:59

连接池本地端口号

2011-06-01 13:54:10

MySQL

2018-02-07 16:23:58

连接池内存池AI

2022-11-11 09:41:04

连接池微服务数据库

2009-06-17 16:22:45

Hibernate连接

2009-09-22 16:04:50

Hibernate连接

2009-09-22 14:52:55

Hibernate p

2019-09-25 11:48:08

MySQL数据库Java

2024-01-10 08:17:50

HikariCP数据库Spring

2009-01-15 09:02:27

JMXJBossJMX监控

2009-07-21 11:05:49

关闭ADO.NET连接

2009-12-25 15:38:12

ADO连接池

2009-06-24 07:53:47

Hibernate数据

2022-07-19 13:51:47

数据库Hikari连接池
点赞
收藏

51CTO技术栈公众号