springboot中使用druid(針對小白兄弟)
阿新 • • 發佈:2021-02-05
技術標籤:mysql
springboot中使用druid(針對小白兄弟)
寫在前面
網上許多springboot中使用druid的教程對小白很不友好,特別是有些關鍵包沒說要導,導致很多小白一弄就報錯,報錯也不知道怎麼辦,寫這篇文章的目的是幫助小白成功在springboot中使用druid。個人的環境是mysql5.7
第一步:導包
在pom.xml檔案中檢查是否加入了以下三個依賴
<!-- Druid連線池 -->
< dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
< artifactId>mysql-connector-java</artifactId>
<version>8.0.18</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</ dependency>
第二步:修改springboot配置檔案
兄弟們注意這裡要改自己的資料庫資訊
spring:
application:
name: springboot-test-exam1
datasource:
# 使用阿里的Druid連線池
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
# 填寫你資料庫的url、登入名、密碼和資料庫名
url: jdbc:mysql://localhost:3306/database?useUnicode=true&serverTimezone=Asia/Shanghai&characterEncoding=utf8&autoReconnect=true&useSSL=false&allowMultiQueries=true
username: root
password: 123456
druid:
# 連線池的配置資訊
# 初始化大小,最小,最大
initial-size: 5
min-idle: 5
maxActive: 20
# 配置獲取連線等待超時的時間
maxWait: 60000
# 配置間隔多久才進行一次檢測,檢測需要關閉的空閒連線,單位是毫秒
timeBetweenEvictionRunsMillis: 60000
# 配置一個連線在池中最小生存的時間,單位是毫秒
minEvictableIdleTimeMillis: 300000
validationQuery: SELECT 1
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
# 開啟PSCache,並且指定每個連線上PSCache的大小
poolPreparedStatements: true
maxPoolPreparedStatementPerConnectionSize: 20
# 配置監控統計攔截的filters,去掉後監控介面sql無法統計,'wall'用於防火牆
filters: stat,wall,slf4j
# 通過connectProperties屬性來開啟mergeSql功能;慢SQL記錄
connectionProperties: 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,192.168.163.1
# IP黑名單 (存在共同時,deny優先於allow)
deny: 192.168.1.73
# 禁用HTML頁面上的“Reset All”功能
reset-enable: false
# 登入名
login-username: admin
# 登入密碼
login-password: 123456