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})

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。

推薦閱讀: