springboot項(xiàng)目數(shù)據(jù)庫(kù)配置類(lèi)DatabaseConfig示例詳解
1:yml配置類(lèi)
spring: datasource: name: text url: jdbc:mysql://192.168.11.50:3306/dsdd?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=UTC username: root password: root driver-class-name: com.mysql.cj.jdbc.Driver
這樣啟動(dòng)項(xiàng)目,沒(méi)有檢查到是否連接數(shù)據(jù)庫(kù)成功
2:數(shù)據(jù)庫(kù)配置類(lèi)(添加數(shù)據(jù)庫(kù)檢查)
package com.example.poi.utils; /** * @Author xu * @create 2023/8/22 21 */ import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.jdbc.datasource.DriverManagerDataSource; import javax.sql.DataSource; import java.sql.Connection; import java.sql.SQLException; @Configuration public class DatabaseConfig { @Value("${spring.datasource.url}") private String dataSourceUrl; @Value("${spring.datasource.username}") private String dataSourceUsername; @Value("${spring.datasource.password}") private String dataSourcePassword; @Value("${spring.datasource.driver-class-name}") private String dataSourceDriverClassName; @Bean public DataSource dataSource() { DriverManagerDataSource dataSource = new DriverManagerDataSource(); dataSource.setUrl(dataSourceUrl); dataSource.setUsername(dataSourceUsername); dataSource.setPassword(dataSourcePassword); dataSource.setDriverClassName(dataSourceDriverClassName); testConnection(dataSource); // 調(diào)用檢查連接方法 return dataSource; } private void testConnection(DataSource dataSource) { try (Connection connection = dataSource.getConnection()) { System.out.println("數(shù)據(jù)庫(kù)連接正常!"); } catch (SQLException e) { // 連接異常處理 //e.printStackTrace(); throw new RuntimeException("數(shù)據(jù)庫(kù)連接異常!"); } } }
3:或者通過(guò)在啟動(dòng)類(lèi)添加數(shù)據(jù)庫(kù)檢測(cè)
@SpringBootApplication public class YourApplication { public static void main(String[] args) { ConfigurableApplicationContext context = SpringApplication.run(YourApplication.class, args); // 檢查數(shù)據(jù)庫(kù)連接是否正常 try { /** 獲取DataSource bean,并調(diào)用getConnection()方法測(cè)試連接*/ context.getBean(javax.sql.DataSource.class).getConnection(); System.out.println("數(shù)據(jù)庫(kù)連接正常!"); } catch (Exception e) { System.err.println("數(shù)據(jù)庫(kù)連接異常:" + e.getMessage()); // 處理連接異常的邏輯 } } }
到此這篇關(guān)于springboot項(xiàng)目數(shù)據(jù)庫(kù)配置類(lèi)DatabaseConfig實(shí)現(xiàn)代碼的文章就介紹到這了,更多相關(guān)springboot數(shù)據(jù)庫(kù)配置類(lèi)DatabaseConfig內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
spring boot springjpa 支持多個(gè)數(shù)據(jù)源的實(shí)例代碼
這篇文章主要介紹了spring boot springjpa 支持多個(gè)數(shù)據(jù)源的實(shí)例代碼,需要的朋友可以參考下2018-04-04SSH框架網(wǎng)上商城項(xiàng)目第16戰(zhàn)之Hibernate二級(jí)緩存處理首頁(yè)熱門(mén)顯示
這篇文章主要介紹了SSH框架網(wǎng)上商城項(xiàng)目第16戰(zhàn)之Hibernate的二級(jí)緩存處理首頁(yè)的熱門(mén)顯示,感興趣的小伙伴們可以參考一下2016-06-06解析Spring Data JPA的Audit功能之審計(jì)數(shù)據(jù)庫(kù)變更
Spring Data JPA 提供了Audit審計(jì)功能,用來(lái)記錄創(chuàng)建時(shí)間、創(chuàng)建人、修改時(shí)間、修改人等,下面來(lái)詳細(xì)講解下審計(jì)數(shù)據(jù)庫(kù)變更2021-06-06Java實(shí)現(xiàn)Map集合遍歷的四種常見(jiàn)方式與用法分析
這篇文章主要介紹了Java實(shí)現(xiàn)Map集合遍歷的四種常見(jiàn)方式與用法,結(jié)合實(shí)例形式較為詳細(xì)的分析了java針對(duì)Map集合鍵值對(duì)遍歷的常見(jiàn)使用技巧與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2018-01-01Java實(shí)現(xiàn)產(chǎn)生隨機(jī)字符串主鍵的UUID工具類(lèi)
這篇文章主要介紹了Java實(shí)現(xiàn)產(chǎn)生隨機(jī)字符串主鍵的UUID工具類(lèi),涉及java隨機(jī)數(shù)與字符串遍歷、轉(zhuǎn)換等相關(guān)操作技巧,需要的朋友可以參考下2017-10-10學(xué)會(huì)Java字節(jié)碼指令,成為技術(shù)大佬
Java 字節(jié)碼指令是 JVM 體系中非常難啃的一塊硬骨頭,我估計(jì)有些讀者會(huì)有這樣的疑惑,“Java 字節(jié)碼難學(xué)嗎?我能不能學(xué)會(huì)?。俊北疚膸ьI(lǐng)大家一探究竟,幫助大家搞懂java底層代碼如何執(zhí)行2021-08-08Mybatis千萬(wàn)級(jí)數(shù)據(jù)查詢的解決方式,避免OOM問(wèn)題
這篇文章主要介紹了Mybatis千萬(wàn)級(jí)數(shù)據(jù)查詢的解決方式,避免OOM問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01