常用配置
1、autoCommit
此屬性控制從池返回的連接的默認自動提交行為。它是一個布爾值。 默認值:true。
設置為false后,事務不會自動提交,導致對數據庫的插入修改操作無效,但是查詢和刪除可以。
2、connectionTimeout
此屬性控制客戶端等待來自池的連接的最大毫秒數。如果在沒有可用連接的情況下超過此時間,則會拋出SQLException。最低可接受的連接超時時間為250 ms。 默認值:30000(30秒)
3、maximumPoolSize
此屬性控制池允許達到的最大大小,包括空閑和正在使用的連接。基本上這個值將決定到數據庫后端的最大實際連接數。對此的合理價值最好由您的執行環境決定。當池達到此大小並且沒有空閑連接可用時,對getConnection()的調用將connectionTimeout在超時前阻塞達幾毫秒。 默認值:10
4、 idleTimeout(閑置連接最長時間)
此屬性控制允許連接在池中閑置的最長時間。 此設置僅適用於minimumIdle定義為小於maximumPoolSize。一旦池達到連接,空閑連接將不會退出minimumIdle。連接是否因閑置而退出,最大變化量為+30秒,平均變化量為+15秒。在超時之前,連接永遠不會退出。值為0意味着空閑連接永遠不會從池中刪除。允許的最小值是10000ms(10秒)。 默認值:600000(10分鍾)
5、minimumIdle(最小空閑連接數)
該屬性控制HikariCP嘗試在池中維護的最小空閑連接數。如果空閑連接低於此值並且連接池中的總連接數少於maximumPoolSize,則HikariCP將盡最大努力快速高效地添加其他連接。但是,為了獲得最佳性能和響應尖峰需求,我們建議不要設置此值,而是允許HikariCP充當固定大小的連接池。 默認值:與maximumPoolSize相同
6、maxLifetime(最大生命時間)
此屬性控制池中連接的最長生命周期。使用中的連接永遠不會退役。 強烈建議您設置此值,它應比任何數據庫或基礎結構強加的連接時間限制短幾秒。 值0表示沒有最大壽命(無限壽命)。 默認值:1800000(30分鍾)如果設置成0會出現問題:長時間沒對庫進行操作(超過8小時)連接會依然在池內,超過8小時數據庫會斷開與客戶端的鏈接,在時用此鏈接必定報錯