嚴重: testWhileIdle is true, validationQuery not set 使用Druid連接池報錯處理


問題描述-

學習網上視頻課中的老項目,項目使用mysql-connector-5.X版本,druid版本1.0.9  ,本機JDK版本10數據庫MySql 8.X,項目使用Maven構建。

首次進行數據庫操作失敗,后改用mysql-connector-8.X,修改driver和url后出現新錯誤如下:

testWhileIdle is true, validationQuery not set

問題解決-

原因是因為沒有SpringBoot框架xml配置,在不使用框架的情況下;怎么解決呢;

原來properties文件配置如下;

driverClassName = com.mysql.cj.jdbc.Driver
url = jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=utf-8&useSSL=false
username = root
password = root
在properties配置文件下添加一些配置;

filters=stat
initialSize=2
maxActive=300
maxWait=60000
timeBetweenEvictionRunsMillis=60000
minEvictableIdleTimeMillis=300000
validationQuery=SELECT 1
testWhileIdle=true
testOnBorrow=false
testOnReturn=false
poolPreparedStatements=false
maxPoolPreparedStatementPerConnectionSize=200
再次運行;

 

報錯2;

信息: {dataSource-1} inited

這是日志信息,沒有錯Druid采用了日志打印機制,這不是報錯;

連接池采用了懶加載,真正用到的時候才初始化;

 

一些名詞解釋,詳見;

 

https://www.cnblogs.com/wuyun-blog/p/5679073.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM