您现在的位置是:首页 > 正文

springboot踩坑日记——springboot整合jpa报错

2024-01-30 21:45:18阅读 0

错误信息

2022-04-26 08:23:43.656 ERROR 18709 --- [           main] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'applicationRepository' defined in com.thecarevoice.kms.application.infra.db.entity.repository.ApplicationRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaMappingContext' while setting bean property 'mappingContext'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jpaMappingContext': Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.exception.JDBCConnectionException: Unable to open JDBC Connection for DDL execution
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:342) ~[spring-beans-5.2.8.RELEASE.jar:5.2.8.RELEASE]
	at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:113) ~[spring-beans-5.2.8.RELEASE.jar:5.2.8.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1697) ~[spring-beans-5.2.8.RELEASE.jar:5.2.8.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1442) ~[spring-beans-5.2.8.RELEASE.jar:5.2.8.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:593) ~[spring-beans-5.2.8.RELEASE.jar:5.2.8.RELEASE]
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:516) ~[spring-beans-5.2.8.RELEASE.jar:5.2.8.RELEASE]
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:324) ~[spring-beans-5.2.8.RELEASE.jar:5.2.8.RELEASE]

JPA配置

# JPA
spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update
# spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
spring.jpa.generate-ddl=true

关键错误信息

Error creating bean with name 'applicationRepository' defined in com.thecarevoice.kms.application.infra.db.entity.repository.ApplicationRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaMappingContext' while setting bean property 'mappingContext'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jpaMappingContext': Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.exception.JDBCConnectionException: Unable to open JDBC Connection for DDL execution

错误原因: 根据实体创建表失败

解决:
方式一:
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, JpaRepositoriesAutoConfiguration.class, HibernateJpaAutoConfiguration.class})

方式二(建议使用):

spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

网站文章

  • js实现iframe路由切换

    页面内嵌套页面,可使用iframe实现。点击切换按钮在上一遍文章。

    2024-01-30 21:45:11
  • H5-meta标签使用大全

    meta标签有下面的作用:搜索引擎优化(提高搜索性能),控制页面功能化。 meta标签的组成:meta标签共有两个属性,它们分别是http-equiv属性和name属性。 1、name属性 name属性主要用于描述网页,与之对应的属性值为content,content中的内容主要是便于搜索引擎机器人查找信息和分类信息用的。 meta标签的name属性语法格式是:

    2024-01-30 21:45:04
  • 【集合详解】HashMap源码解析

    【集合详解】HashMap源码解析

    一、HashMap概述 二、HashMap的数据结构 三、HashMap源码分析 1.继承 2、关键属性 3、结构 4、构造函数 5、扩

    2024-01-30 21:44:34
  • java xml特殊字符转义_Java中将xml文件转化为json遇到特殊字符会报错!

    前言:我们在项目开发中,有时候调用别人提供的接口,接收到的数据是xml,这时候为了方便后续开发中的使用,需要解析xml并把数据转化成json,今天这篇文章就讲解下如何把xml转化成json,并在这个过...

    2024-01-30 21:44:26
  • 多线程之阻塞队列BlockingQueue简化生产者消费者模式

    在基于阻塞队列构建的生产者—消费者设计中,当数据生成时,生产者把数据放入队列,而当消费者准备处理数据时,将从队列中获取数据。生产者不需要知道消费者的标识或数量,或者它们是否是唯一的生产者,而只需将数据...

    2024-01-30 21:44:20
  • 常用的第三方SDK介绍(搜集中)

    1.验证码 我们开发IT产品时经常要实现注册登录,现在很流行用短信验证码或者语音验证码的形式向客户端发送验证码。 我们开发人员估计都会选用现成的SDK接入实现。比如:创蓝中国 这家专做短信或者语音验证码,或者短信服务。 还有:网易云信 网易云信倒不是专做验证码,可以通过里面的短信模块自己实现验证码。当然网易云信还有其他很多好玩实用的SDK,教学白板就很好玩。 2

    2024-01-30 21:43:48
  • 看完这9本书,让你的编程水平脱胎换骨!(Python篇)

    看完这9本书,让你的编程水平脱胎换骨!(Python篇)

    Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取哈)

    2024-01-30 21:43:41
  • HTML5为什么可以取代Flash(一)

    HTML5为什么可以取代Flash(一)

    AdobeFlash播放器的安全漏洞长久以来都是大麻烦。今夏早些时候,Flash播放器甚至被迫在一周内更新36个安全补丁。 史蒂夫.乔布斯素以反对Flash著称,他在2010年时发表过一份措辞严厉的声明,并拒绝在iPhone上兼容Flash。到2011年,Adobe宣布停止在移动设备上支持Flash播放器。 谷歌最新关于Flash的声明则可能敲响了Flash的丧钟。谷歌Chrome团队宣布将在

    2024-01-30 21:43:33
  • JS 脚本动态执行 动态生成Function / 三个点运算符(扩展运算符)

    最近有个这样的需求,要在我们的后台界面上,让平台使用者可以输入一段脚本,然后在nodejs层,读取这个脚本并执行。并且还要支持自定义输入参数的能力。研究了一下Function的使用,记录在这里。int...

    2024-01-30 21:43:03
  • Python常见面试题总结——个人Python学习经验

    Python常见面试题总结——个人Python学习经验

    这里对Python常见面试题做一个总结,也仅仅是个人的经验,不足之处,还请伙伴们补充!python是如何进行类型转换的?python提供了将变量或值从一种类型转换成另一种类型的内置函数。比如int函数...

    2024-01-30 21:42:56