我正在使用Spring Boot JPA创建一个应用程序,我正在使用MySQL作为数据库。
以下是我的网站www.example.comapplication.properties
spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=
spring.jpa.database-platform=org.hibernate.dialect.MySQL8Dialect
我添加了以下依赖项
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.17</version>
</dependency>
当我检查调试日志时,我可以在我的类路径中看到mysqljava连接器,但我仍然得到以下错误
2019 - 07 - 29 10:03:00.742信息10356---[主目录] o.a.c.c.c. [Tomcat].[本地主机].[/]:正在初始化Spring嵌入式Web应用程序上下文2019 - 07 - 29 10:03:00.742信息10356---[main]操作系统Web上下文。上下文加载器:根Web应用程序上下文:初始化在1534 ms内完成2019 - 07 - 29 10:03:00.789警告10356---[main]配置服务器网络服务器应用程序上下文:上下文初始化期间遇到异常-取消刷新尝试:未满足的依赖项异常:创建名为"org. springframework. boot. autoconfigure. orm. jpa. Hibernate Jpa配置"的Bean时出错:未满足通过构造函数参数0表示的依赖项;嵌套的异常是org. springframework. bean.工厂。创建在类路径资源[org/springframework/boot/autoconfigure/jdbc/数据源配置$Hikari. class]中定义的名为"dataSource"的Bean时出错:通过工厂方法示例化Bean失败;嵌套的异常是org. springframework. beans。示例化[com. zaxxer. hikari. hikariDataSource]失败:工厂方法"dataSource"引发异常;嵌套异常是org. springframework. boot. autoconfigure. jdbc.数据源属性$数据源Bean创建异常:无法确定合适的驱动程序类2019 - 07 - 29 10:03:00.789信息10356---[main] o. apache. catalina. core.标准服务:正在停止服务[Tomcat] 2019 - 07 - 29 10:03:00.805信息10356---[主要]条件评估报告日志记录侦听器:
启动ApplicationContext时出错。要显示条件报告,请在启用"调试"的情况下重新运行应用程序。2019 - 07 - 29 10:03:00.805错误10356---[main] o.s.b.d. LoggingFailureAnalysisReporter:
***************************应用程序启动失败
描述:
配置数据源失败:未指定"url"属性,无法配置嵌入式数据源。
原因:无法确定合适的驱动程序类
行动:
请考虑以下几点:如果您需要嵌入式数据库(H2、HSQL或Derby),请将其放在类路径中。如果您需要从特定概要文件加载数据库设置,则可能需要激活它(当前没有活动的概要文件)。
7条答案
按热度按时间30byixjq1#
Sping Boot 自动配置尝试根据添加到类路径的依赖项自动配置bean。由于类路径上存在JPA依赖项,因此Spring Boot尝试自动配置JPA数据源。问题是,您没有为Spring提供执行自动配置所需的完整信息。
将这个缺少的属性添加到
application.properties
文件中,以便spring可以自动配置另一种以编程方式定义数据源的方法是使用实用程序生成器类DataSourceBuilder。为此,您需要提供数据库URL、用户名、口令和SQL驱动程序信息以创建数据源:
euoag5mw2#
我有同样的问题,我解决了它做右键点击项目,maven/更新项目,然后你应该选择你的项目并接受。
bfrts1fy3#
我也遇到过这个问题。我的解决办法是:打开模块设置,选择资源,右击,选择“测试资源”,问题解决。
m528fe3b4#
SpringAutoconfigure查找2个属性来加载适当的驱动程序,
1.驱动器类名(在本例中,从MySQL连接器www.example.com开始,该值为“com.mysql.cj.jdbc.Driver”4.4.1.3)
实际上,SpringAutoconfigure只需要spring.datasource.url,它就可以从那里派生出驱动程序类名。
dauxcl2d5#
您的应用程序组织如下所示:
共享资源-〉模块1
Commons是模块1的父级。
我在公共模块中创建了一个带有JPA注解的BaseEntity。
一旦我添加了提供的
这个问题已经为我解决了。不幸的是
2admgd596#
变更:
致:
nkhmeac67#
这是我的配置中的一些错误,我无法检测,我重新创建相同的项目和事情开始工作