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

