You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

跟随Spring入门课程开发应用时启动失败,Bean创建报错求助

Spring Boot启动失败:HibernateJpaAutoConfiguration/DataSource创建失败解决方案

看起来你遇到的问题是Spring Boot自动配置JPA组件时,找不到合适的数据库配置导致的启动失败,我来帮你拆解原因和解决办法:

错误根源

你在pom.xml中引入了spring-boot-starter-data-jpa依赖,Spring Boot的自动配置机制会检测到这个依赖,尝试自动创建DataSource和JPA相关的Bean。但此时你既没有配置外部数据库的连接信息,也没有添加嵌入式数据库的依赖,所以Spring Boot无法确定要使用的数据库驱动,最终抛出Cannot determine embedded database driver class for database type NONE的错误。

解决方案

根据你的使用场景,有三种可选方案:

方案1:使用嵌入式数据库(适合学习/快速测试)

如果只是在学习阶段,不想搭建外部数据库,可以添加一个嵌入式数据库的依赖,比如H2数据库:

<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
    <scope>runtime</scope>
</dependency>

添加这个依赖后,Spring Boot会自动完成H2数据库的配置,不需要额外的连接信息,应用就能正常启动。

方案2:配置外部数据库(比如MySQL/PostgreSQL)

如果你需要连接外部数据库,需要完成两步操作:

  1. 添加对应数据库的驱动依赖,以MySQL为例:
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
</dependency>
  1. 在src/main/resources/application.properties文件中添加数据库连接配置:
# MySQL连接配置,替换成你的实际信息
spring.datasource.url=jdbc:mysql://localhost:3306/your_db_name
spring.datasource.username=your_db_user
spring.datasource.password=your_db_password
# 适配不同MySQL版本的驱动类
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# JPA表生成策略,根据需要调整
spring.jpa.hibernate.ddl-auto=update

方案3:移除JPA依赖(如果暂时不需要)

如果你当前的应用还不需要使用JPA功能,可以直接从pom.xml中移除spring-boot-starter-data-jpa依赖:

<!-- 移除这个依赖 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

这样Spring Boot就不会触发JPA相关的自动配置,应用可以正常启动。

另外提一句:你的Spring Boot版本是1.5.9.RELEASE,属于比较旧的版本了,不过上面的解决方案在这个版本中同样有效。

内容的提问来源于stack exchange,提问作者Maciaz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 03:47:56