文章前提:前面開發項目的時候數據池一直用的阿里的druid,這個數據池吧也不能說它很差,爲何如今想改爲hikaricp數據池呢,徹底是實用項目須要。druid問題:git
問題一:druid的問題出在它功能太多了,項目進本開發完了,而後發現這些功能根本就沒用到,好比它的數據池監控界面什麼的,根本就沒人用過尷尬,還有它監控了不少東西,致使它攔截了不少東西,日誌什麼的都要攔截,實際項目開發的時候用到了不少的技術,不少次都是druid報錯,就是它的攔截配置攔截的太厲害了,跟有的技術還有一些衝突,也不是不能解決,改下druidconfig的事情,可是作多了就煩了,這是最要人命的。github
問題二:druid自己跟spring boot是不兼容的,須要寫一個config文件注入到spring boot的配置文件中,這麼寫就算能用,可是在application.yml仍是會報黃色警告,對於代碼有強迫症的人來講有點難受,不過這都是小問題spring
問題三:druid的性能沒有hikaricp好,尤爲是在處理大量數據的時候效果更明顯,這也是小問題數據庫
總的來講hikaricp的功能正好是咱們須要的,很少很多,性能還好就選上它了json
demo功能簡介: 就是基本的spring boot技術面向業務,mybatis跟數據庫打交道,hikaricp數據池,swagger2生成在線文檔,jasypt加密明文密碼mybatis
這裏就不一一記錄了,親測可用app
而後項目開發完了之後須要關閉swagger2在線文檔怎麼關閉呢函數
步驟一:屏蔽swagger配置文件上的註解,這樣就沒有json數據了spring-boot
這樣就只剩下UI了,都沒有json數據了空的UI性能
步驟二:屏蔽swaggerUI的包,任何整個項目swagger2就徹底不能用了,就跟沒有使用過swagger2同樣。
配置文件明文密碼加密問題:
第一步,導入一個最新版本的包:
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>1.16</version>
</dependency>
在主函數加入@EnableEncryptableProperties註解
第二步:生成加密密碼
能夠用jar命令生成,也能夠用代碼寫
運行Test函數在控制檯copy加密後的密碼,而後加在配置文件裏面
第三步,配置文件,foo那個是固定寫法
jasypt的github地址:https://github.com/ulisesbocchio/jasypt-spring-boot
項目源碼github地址:https://github.com/waterlufei/spring-boot,TestHirikacp項目