springboot項目數據庫連接配置
**
1,添加兩個依賴
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.3</version>
</dependency>
2,編寫application.yml配置文件
spring:
datasource:
# 數據源
type: com.alibaba.druid.pool.DruidDataSource
# 數據庫連接驅動
driverClassName: com.mysql.jdbc.Driver
#
druid:
default: #默認數據源
#
url: jdbc:mysql://localhost:3306/數據庫?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8
username: 賬戶
password: 密碼
# 初始化建立的物理連接數
initial-size: 10
# 最大連接池數量
max-active: 1000
# 最小連接池數量
min-idle: 10
# 獲取連接時最大等待時間
max-wait: 60000
# 是否緩存preparedStatement
pool-prepared-statements: true
# 要啓用PSCache,必須配置大於0,當大於0時,poolPreparedStatements自動觸發修改爲true。
max-pool-prepared-statement-per-connection-size: 20
# 有兩個含義:1) Destroy線程會檢測連接的間隔時間,如果連接空閒時間大於等於minEvictableIdleTimeMillis則關閉物理連接。
# 2) testWhileIdle的判斷依據,詳細看testWhileIdle屬性的說明
time-between-eviction-runs-millis: 60000
# 連接保持空閒而不被驅逐的最小時間
min-evictable-idle-time-millis: 300000
# 用來檢測連接是否有效的sql,要求是一個查詢語句,常用SELECT 1 FROM DUAL。
validation-query: SELECT 1 FROM DUAL
# 建議配置爲true,不影響性能,並且保證安全性。申請連接的時候檢測,如果空閒時間大於timeBetweenEvictionRunsMillis,執行validationQuery檢測連接是否有效。
test-while-idle: true
# 申請連接時執行validationQuery檢測連接是否有效,做了這個配置會降低性能。
test-on-borrow: false
# 歸還連接時執行validationQuery檢測連接是否有效,做了這個配置會降低性能。
test-on-return: false
# 監控頁面相關配置
stat-view-servlet:
enabled: true
url-pattern: /druid/
#login-username: admin
#login-password: 123456
# filter相關配置
filter:
stat:
log-slow-sql: true
slow-sql-millis: 1000
merge-sql: true
wall:
config:
multi-statement-allow: true