springboot 配置不连接数据库启动
作者:mmseoamin日期:2023-12-25

文章目录

  • 背景
  • 数据库基本依赖
  • 启动报错
    • 报错1
    • 报错2
    • 总结
    • 参考链接

      背景

      • 启动项目的时候不需要配置连接数据库
      • 已经连接数据库的项目临时不连接数据库启动

            报如下错误:也就是说数据源的url没有配置。要么把报错数据源配上,要么排除掉数据源的加载。这里当然是后者了,把数据源加载排除。

        springboot 配置不连接数据库启动,image.png,第1张

        数据库基本依赖

        • mysql数据库驱动
        • druid数据库连接池

          启动报错

          报错1

          报错内容:

          springboot 配置不连接数据库启动,image.png,第2张

          启动报错时的启动类:

          @SpringBootApplication
          public class SpringBootTestApplication {
            public static void main(String[] args) {
              SpringApplication.run(SpringBootTestApplication.class, args);
            }
          }
          

          依照以上报错使用了Druid的加载配置,将DruidDataSourceAutoConfigure排除。修改之后的启动类:

          @SpringBootApplication(exclude = DruidDataSourceAutoConfigure.class)
          public class SpringBootTestApplication {
              public static void main(String[] args) {
                  SpringApplication.run(SpringBootTestApplication.class, args);
              }
          }
          

          修改完成后再次启动,仍然出现报错↓↓↓

          报错2

          报错内容:虽然不默认加载Druid的数据源配置了,但是默认加载了springboot的默认数据源配置

          springboot 配置不连接数据库启动,image.png,第3张

          依照此类错误,又把启动类进行调整,排除springboot的默认启动类DataSourceConfiguration

          @SpringBootApplication(exclude = {DruidDataSourceAutoConfigure.class, DataSourceAutoConfiguration.class})
          public class SpringBootTestApplication {
              public static void main(String[] args) {
                  SpringApplication.run(SpringBootTestApplication.class, args);
              }
          }
          

          再次启动,发现成功了!

          springboot 配置不连接数据库启动,image.png,第4张

          总结

          1. 不需要连接数据源,但是仍然加载了datasource url,检查日志是加载了哪里的配置,排除掉即可;
          2. 依次类推,可能会有多个默认数据源配置的加载,多次启动默认加载了那个就排除掉;
          3. 看一些其他博客也有排除HibernateJpaAutoConfiguration配置的,这个需要看具体连接池使用情况;

          参考链接

          https://blog.csdn.net/u012240455/article/details/82356075

          https://blog.csdn.net/knqi007/article/details/83997634