注: https://blog.csdn.net/weixin_43453386/article/details/83582399
配置:
spring:
datasource:
# 基本屬性
name: dev
url: jdbc:mysql://127.0.0.1:3306/test?autoReconnect=true&useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull&useSSL=false
username: root
password: 123456
# 可以不配置,根據url自動識別,建議配置
driver-class-name: com.mysql.jdbc.Driver
###################以下爲druid增加的配置###########################
type: com.alibaba.druid.pool.DruidDataSource
# 初始化連接池個數
initialSize: 5
# 最小連接池個數——》已經不再使用,配置了也沒效果
minIdle: 2
# 最大連接池個數
maxActive: 20
# 配置獲取連接等待超時的時間,單位毫秒,缺省啓用公平鎖,併發效率會有所下降
maxWait: 60000
# 配置間隔多久才進行一次檢測,檢測需要關閉的空閒連接,單位是毫秒
timeBetweenEvictionRunsMillis: 60000
# 配置一個連接在池中最小生存的時間,單位是毫秒
minEvictableIdleTimeMillis: 300000
# 用來檢測連接是否有效的sql,要求是一個查詢語句。
# 如果validationQuery爲null,testOnBorrow、testOnReturn、testWhileIdle都不會起作用
validationQuery: SELECT 1 FROM DUAL
# 建議配置爲true,不影響性能,並且保證安全性。
# 申請連接的時候檢測,如果空閒時間大於timeBetweenEvictionRunsMillis,執行validationQuery檢測連接是否有效。
testWhileIdle: true
# 申請連接時執行validationQuery檢測連接是否有效,做了這個配置會降低性能
testOnBorrow: false
# 歸還連接時執行validationQuery檢測連接是否有效,做了這個配置會降低性能
testOnReturn: false
# 打開PSCache,並且指定每個連接上PSCache的大小
poolPreparedStatements: true
maxPoolPreparedStatementPerConnectionSize: 20
# 通過別名的方式配置擴展插件,多個英文逗號分隔,常用的插件有:
# 監控統計用的filter:stat
# 日誌用的filter:log4j
# 防禦sql注入的filter:wall
filters: stat,wall,log4j
# 通過connectProperties屬性來打開mergeSql功能;慢SQL記錄
connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
# 合併多個DruidDataSource的監控數據
useGlobalDataSourceStat: true
jdbc屬性: