SpringBoot2.0整合jpa报错:error creating bean with name 'entityManagerFactory'

本文介绍了解决因MySQL驱动版本过高导致与Hibernate不兼容的问题,通过显式指定mysql-connector-java版本为5.1.42,确保了SpringBoot项目正常运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先说解决方法:
将maven中mysql-connector-java的版本指定为5.1.42.

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.42</version>
</dependency>

如果你想知道为什么这样做,请接着看:
我们知道SpringBoot的Maven依赖中不需要自己添加版本号,这是因为SpringBoot的父项目的父项目已经帮我们配置好了。
如何查看默认的版本号?
在pom.xml里找到spring-boot-starter-parent,按CTRL加鼠标左键进入其父项目

你可以在父项目文件找到这个配置,按相同的方式查看。

最后我们可以看到一大串的版本号:

我们分别找下hibernate和mysql连接驱动的默认版本号:

这个错误产生的原因是mysql驱动的版本太高,hibernate版本不兼容所以报错了(可能兼容这词用的不太好),总之显式指定mysql驱动的版本号就行了。5.1.42是我测试可以用的,其他高于此的版本不太清楚能不能用,小伙伴们可以试一试。

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值