千家信息网

怎样用springBoot 排除数据库启动方式

发表于:2025-01-30 作者:千家信息网编辑
千家信息网最后更新 2025年01月30日,本篇文章为大家展示了怎样用springBoot 排除数据库启动方式,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。springBoot 排除数据库启动1. 场景
千家信息网最后更新 2025年01月30日怎样用springBoot 排除数据库启动方式

本篇文章为大家展示了怎样用springBoot 排除数据库启动方式,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

springBoot 排除数据库启动

1. 场景

在家里运行项目,运行springBoot的时候报数据库连接不了,公司的数据库家里不能连接。

2. 配置

2.1 保留之前的properties 配置,不删除;

2.2 在启动类中添加

exclude = {DataSourceAutoConfiguration.class}
package cn.cncommdata.file;import org.mybatis.spring.annotation.MapperScan;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;import org.springframework.cloud.openfeign.EnableFeignClients;/** * 启动类 */@SpringBootApplication(scanBasePackages = "cn.cncommdata", exclude = {DataSourceAutoConfiguration.class})@EnableFeignClients(basePackages = {"cn.cncommdata", "cc.iooc"})@MapperScan("cn.cncommdata.file.dao")public class FileApplication {    /**     * main     *     * @param args args     */    public static void main(String[] args) {        SpringApplication.run(FileApplication.class, args);    }    /**     * 没什么用,就是不想让checkstyle报错     */    public void init() {    }}

Springboot不经过数据库直接启动

问题

之前开发工程中,有一个单独注册在nacos上服务的项目(不需要访问数据库)需要启动,但是启动会报错。

错误

Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is org.springframework.boot.autoconfigure.jdbc.DataSourcePropertiesDataSourceBeanCreationException: Failed to determine a suitable driver class

原因

SpringBoot项目默认会访问数据库,因为此时没有写数据库连接,所以出现这个错误。

解决

在启动类上加上一个注解,在容器加载的时候默认排除数据库连接即可。

具体如图所示:

上述内容就是怎样用springBoot 排除数据库启动方式,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

0