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-04
SSH框架網(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-06
Java實(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-01
Java實(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ì)???”本文帶領(lǐng)大家一探究竟,幫助大家搞懂java底層代碼如何執(zhí)行2021-08-08
Mybatis千萬(wàn)級(jí)數(shù)據(jù)查詢(xún)的解決方式,避免OOM問(wèn)題
這篇文章主要介紹了Mybatis千萬(wàn)級(jí)數(shù)據(jù)查詢(xún)的解決方式,避免OOM問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01

