Spring boot 数据源未配置异常的解决

Spring boot 数据源未配置异常

问题

在使Springboot自动生成的项目框架时如果选择了数据源,比如选择了mysql,生成项目之后,启动会报一下异常:

Description:

Cannot determine embedded database driver class for database type NONE

Action:

If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active).

问题分析

导致此问题的原因为,springboot生成的项目启动时会自动注入数据源。而此时在配置文件中并没有配置数据源信息,因此会抛出异常。

解决方案

(1)如果暂时不需要数据源,可将pom文件中的mysql和mybatis(或其他数据源框架)注释掉,即可正常启动。

(2)在@SpringBootApplication中排除其注入

@SpringBootApplication(exclude={DataSourceAutoConfiguration.class,HibernateJpaAutoConfiguration.class})

(3)提供数据源的配置或其他数据源配置,此处提供默认配置示例,在application.properties文件中添加以下配置项:

# 主数据源,默认的
#spring.datasource.type=com.zaxxer.hikari.HikariDataSource
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=root

springboot启动提示缺少数据源

If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently

正解:

因为spring boot只要你在pom中引入了mybatis-spring-boot-starter 他就会默认需要加载数据库相关的配置

可以加上

@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Springboot异常错误处理解决方案详解

    1.在有模板引擎的情况下: springboot会默认找 templates/error/错误状态码.html,所以我们要定制化错误页面就可以到templates/error下创建一个[对应错误状态码.html]html文件,当发生此状态码的错误springboot就会来到对应的页面. 同时如果我们想让400-499之间的错误都去同一个错误页面,那我们可以在templates/error下创建一个4xx.html.同理500-599的错误可以用5xx.html. 注意:springboot会优先

  • Spring Boot集成Druid出现异常报错的原因及解决

    Spring Boot集成Druid异常 在Spring Boot集成Druid项目中,发现错误日志中频繁的出现如下错误信息: discard long time none received connection. , jdbcUrl : jdbc:mysql://******?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8, version : 1.2.3, las

  • 详解SpringBoot 处理异常的几种常见姿势

    一.使用 @ControllerAdvice 和 @ExceptionHandler 处理全局异常 这是目前很常用的一种方式,非常推荐.测试代码中用到了 Junit 5,如果你新建项目验证下面的代码的话,记得添加上相关依赖. 1. 新建异常信息实体类 非必要的类,主要用于包装异常信息. src/main/java/com/twuc/webApp/exception/ErrorResponse.java /** * @author shuang.kou */ public class ErrorR

  • 解决springboot利用ConfigurationProperties注解配置数据源无法读取配置信息问题

    @ConfigurationProperties是springboot新加入的注解,主要用于配置文件中的指定键值对映射到一个java实体类上.那么它是怎么发挥作用的呢?下面我们将揭开@ConfigurationProperties的魔法. ConfigurationPropertiesBindingPostProcessor这个bean后置处理器,就是来处理bean属性的绑定的,这个bean后置处理器后文将称之为properties后置处理器.你需要知道以下几件事: ioc容器context的e

  • Spring boot 数据源未配置异常的解决

    Spring boot 数据源未配置异常 问题 在使Springboot自动生成的项目框架时如果选择了数据源,比如选择了mysql,生成项目之后,启动会报一下异常: Description: Cannot determine embedded database driver class for database type NONE Action: If you want an embedded database please put a supported one on the classpat

  • Spring Boot中自动化配置的利弊以及解决方法

    本文主要给大家介绍了关于Spring Boot自动化配置的利弊及解决方法的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: Spring Boot中的双刃剑:自动化配置 在之前的文章中,我们通过各种功能性示例体验了Spring Boot的自动化配置给我们所带来的超便利的新开发方式.但是,在一些情况下Spring Boot的自动化配置也会给我们惹来不少的麻烦,比如这些场景: 项目依赖复杂的情况下,由于依赖方的依赖组织不够严格,可能引入了一些实际我们不需要的依赖,从而导致我们

  • spring boot下mybatis配置双数据源的实例

    目录 单一数据源配置 多个数据源配置 多数据源配置文件 多数据源配置类 最近项目上遇到需要双数据源的来实现需求,并且需要基于spring boot,mybatis的方式来实现,在此做简单记录. 单一数据源配置 单一数据源配置的话并没有什么特别的,在spring boot框架下,只需要在配置文件内添加对应的配置项即可,spring boot会自动初始化需要用到的bean. 配置信息如下.这里使用的是德鲁伊的数据源配置方式 #datasource配置 spring.datasource.type=c

  • 基于Spring Boot 排除自动配置的4个方法

    Spring Boot 排除自动配置 方法1 使用 @SpringBootApplication 注解,用 exclude 属性进行排除指定的类: @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) public class Application { // ... } 方法2 单独使用 @EnableAutoConfiguration 注解的时候: @EnableAutoConfiguration(excl

  • Docker环境下Spring Boot应用内存飙升分析与解决场景分析

    目录 Spring Boot应用内存飙升 服务现状 JVM默认内存设置 优化 限制JVM内存 参数解释 JVM常见参数 java.security.egd 作用 优化后的Dockerfile文件 优化后的效果 JVM参数设置是否生效 基础镜像优化 OpenJ9 GraalVM Fabric8 优化后的Dockerfile文件 优化后的效果 备注 Xmx < limit 支持springboot多环境和jvm动态配置的Dockerfile 参考 Spring Boot应用内存飙升 一个简单的Spr

  • Spring Boot 与 mybatis配置方法

    1.首先,spring boot 配置mybatis需要的全部依赖如下: <!-- Spring Boot 启动父依赖 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.1.RELEASE</version> </

  • springboot程序启动慢-未配置hostname的解决

    目录 springboot程序启动慢-未配置hostname 具体日志如下 通过jstack查看线程发现如下信息 查看源码如下 Spring Boot启动速度慢的原因总结 前提条件 原因一 原因二 原因三 解决方法 springboot程序启动慢-未配置hostname 今天有同时反馈自己的程序在本地mac环境还正常,在生产环境上centos7启动特别慢 具体日志如下 可以看到程序在这里卡了将近2分钟时间,期间无任何日志输出. 通过jstack查看线程发现如下信息 查看源码如下 public n

  • Spring Boot统一处理全局异常的实战教程

    目录 注解的介绍 @ControllerAdvice @ExceptionHandler拦截异常并统一处理 代码实现 自定义异常 统一异常处理 前端返回值类 测试用例 附:Spring Boot默认的异常处理机制 总结 注解的介绍 @ControllerAdvice @ControllerAdvice注解是Spring3.2中新增的注解,学名是Controller增强器,作用是给Controller控制器添加统一的操作或处理. 这里ControllerAdvice也可以这么理解,其抽象级别应该是

  • spring boot的maven配置依赖详解

    本文介绍了spring boot的maven配置依赖详解,分享给大家,具体如下: 我们通过引用spring-boot-starter-parent,添加spring-boot-starter-web 可以实现web项目的功能,当然不使用spring-boot-start-web,通过自己添加的依赖包也可以实现,但是需要一个个添加,费时费力,而且可能产生版本依赖冲突.我们来看下springboot的依赖配置: 利用pom的继承,一处声明,处处使用.在最顶级的spring-boot-dependen

随机推荐