您好,登錄后才能下訂單哦!
SpringBoot默認使用HikariDataSource數據源方式及配置是怎樣的,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
數據源:存儲了所有建立數據庫連接的信息。通過提供正確的數據源名稱,你可以找到相應的數據庫連接。
數據源負責維持一個數據庫連接池,當程序創建數據源實例時,系統會一次性的創建多個數據庫連接,并把這些數據連接保存在連接池中。當程序需要進行數據庫訪問時,無須重新獲得數據庫連接,而是從連接池中取出一個空閑的數據庫連接,當程序使用數據庫連接訪問結束后,無須關閉數據庫連接,而是將數據庫連接歸還給連接池即可。通過這種方式可以避免頻繁的獲取數據庫連接,關閉數據庫連接所導致的性能下降。
全局配置文件application.yml中spring.datasource下只配置了賬號,密碼,數據庫地址,連接驅動,因為默認使用的是HikariDataSource數據源。
如果是自定義數據源,可以使用
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
測試:
@RunWith(SpringRunner.class) @SpringBootTest public class HorseApplicationTests { /** * Spring Boot 默認已經配置好了數據源,程序員可以直接 DI 注入然后使用即可 */ @Resource DataSource dataSource; @Test public void contextLoads() throws SQLException { System.out.println("數據源>>>>>>" + dataSource.getClass()); }
運行結果:
數據源>>>>>>class com.zaxxer.hikari.HikariDataSource
有了數據源,就可以拿到數據庫連接,使用JdbcTemplate 進行CRUD數據庫,即使沒有使用第三方數據庫操作框架,如:Mybatis,Hibernate,等Spring本身就可以對原生的JDBC做了輕量級的封裝,即時JdbcTemplate.
SpringBoot不僅提供了默認的數據源,同時默認已經配置好了JdbcTemplate放在容器中,程序員只需自己注入即可使用。
JdbcTemplate的自動裝配原理是依賴JdbcTemplateAutoConfiguration類。
com.zaxxer.hikari.HikariConfig private static final long IDLE_TIMEOUT = MINUTES.toMillis(10); private static final long MAX_LIFETIME = MINUTES.toMillis(30); private static final int DEFAULT_POOL_SIZE = 10; private static boolean unitTest = false; // Properties changeable at runtime through the HikariConfigMXBean // private volatile long connectionTimeout; private volatile long validationTimeout; private volatile long idleTimeout; private volatile long leakDetectionThreshold; private volatile long maxLifetime; private volatile int maxPoolSize; private volatile int minIdle; private volatile String username; private volatile String password;
看完上述內容,你們掌握SpringBoot默認使用HikariDataSource數據源方式及配置是怎樣的的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。