springboot项目数据库配置类DatabaseConfig示例详解

 更新时间:2023年08月23日 09:05:56   作者:小徐敲java  
这篇文章主要介绍了springboot项目数据库配置类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

这样启动项目,没有检查到是否连接数据库成功

2:数据库配置类(添加数据库检查)

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); // 调用检查连接方法
        return dataSource;
    }
    private void testConnection(DataSource dataSource) {
        try (Connection connection = dataSource.getConnection()) {
            System.out.println("数据库连接正常!");
        } catch (SQLException e) {
            // 连接异常处理
            //e.printStackTrace();
            throw new RuntimeException("数据库连接异常!");
        }
    }
}

3:或者通过在启动类添加数据库检测

@SpringBootApplication
public class YourApplication {
    public static void main(String[] args) {
        ConfigurableApplicationContext context = SpringApplication.run(YourApplication.class, args);
        // 检查数据库连接是否正常
        try {
            /** 获取DataSource bean,并调用getConnection()方法测试连接*/
            context.getBean(javax.sql.DataSource.class).getConnection();
            System.out.println("数据库连接正常!");
        } catch (Exception e) {
            System.err.println("数据库连接异常:" + e.getMessage());
            // 处理连接异常的逻辑
        }
    }
}

到此这篇关于springboot项目数据库配置类DatabaseConfig实现代码的文章就介绍到这了,更多相关springboot数据库配置类DatabaseConfig内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 5个主流的Java开源IDE工具详解

    5个主流的Java开源IDE工具详解

    这篇文章主要介绍了5个主流的Java开源IDE工具,无论如何,Java在当今使用的编程语言中始终排在前三名,在TIOBE索引中涉及700万到1000万的程序员和开发者
    2020-07-07
  • 浅谈Mybatis传参类型如何确定

    浅谈Mybatis传参类型如何确定

    最近有小伙伴在讨论#{}与${}的区别时,有提到#{}是用字符串进行替换,本文主要介绍了mapper接口中不同的参数类型,最终拼接sql中是如何进行替换的,感兴趣的可以了解一下
    2021-10-10
  • 浅谈java多线程编程

    浅谈java多线程编程

    这篇文章主要介绍了java多线程编程的相关资料,文中讲解非常细致,帮助大家更好的理解和学习java多线程,感兴趣的朋友可以了解下
    2020-08-08
  • 详解JDK9特性之JPMS模块化

    详解JDK9特性之JPMS模块化

    JDK9引入了一个特性叫做JPMS(Java Platform Module System),也可以叫做Project Jigsaw。模块化的本质就是将一个大型的项目拆分成为一个一个的模块,每个模块都是独立的单元,并且不同的模块之间可以互相引用和调用。本文将详细介绍JDK9特性之JPMS模块化。
    2021-06-06
  • JAVA spark创建DataFrame的方法

    JAVA spark创建DataFrame的方法

    这篇文章主要介绍了JAVA spark创建DataFrame的方法,帮助大家更好的理解和学习spark,感兴趣的朋友可以了解下
    2020-08-08
  • Java设计模式之观察者模式

    Java设计模式之观察者模式

    这篇文章主要介绍了Java设计模式之观察者模式,观察者模式,是一种行为性模型,又叫发布-订阅模式,他定义对象之间一种一对多的依赖关系,使得当一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新,需要的朋友可以参考下
    2023-11-11
  • java编译器的基础知识点

    java编译器的基础知识点

    在本篇文章里小编给大家整理的是一篇关于java编译器的基础知识点内容,有兴趣的朋友们可以阅读下。
    2020-02-02
  • Java toString方法使用超全讲解

    Java toString方法使用超全讲解

    在Java中所有的类都有一个共同的父类Object(默认继承,不用加extends关键字),toString方法就是Object类的一个方法,用来返回该对象的字符串表示形式,下面这篇文章主要给大家介绍了关于Java toString方法使用的相关资料,需要的朋友可以参考下
    2023-05-05
  • 关于Spring Cloud健康检查的陷阱

    关于Spring Cloud健康检查的陷阱

    这篇文章主要介绍了关于Spring Cloud健康检查的陷阱,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • java实现同步回调的示例代码

    java实现同步回调的示例代码

    同步回调是一种在调用代码中同步执行回调函数的编程模式,在Java中,通过定义和实现接口来构建同步回调,本文就来介绍一下如何实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-09-09

最新评论