📅  最后修改于: 2023-12-03 14:55:07.821000             🧑  作者: Mango
在使用Spring Boot和Hibernate进行开发时,可能会遇到以下错误:
Unknown property: spring.jpa.hibernate.naming-strategy
这是因为spring.jpa.hibernate.naming-strategy
这个属性在新版本的Hibernate中已经不再支持。如果您在应用程序的配置文件中使用了这个属性,就会导致错误出现。
解决方法:
如果您的应用程序使用的是Hibernate 5.2或更高版本,可以直接移除spring.jpa.hibernate.naming-strategy
属性,因为它已经被默认设置为org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
。
如果您需要自定义命名策略,可以使用spring.jpa.hibernate.naming.physical-strategy
和spring.jpa.hibernate.naming.implicit-strategy
属性分别对应显式和隐式命名策略,这些属性支持与Hibernate 5.2或更高版本的Spring Boot一起使用。
spring:
jpa:
hibernate:
naming:
physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
implicit-strategy: org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl
如果您使用的是Hibernate 5.1或更低版本,则可以使用以下属性来替换spring.jpa.hibernate.naming-strategy
:
显式命名策略:
spring.jpa.hibernate.naming.physical-strategy
隐式命名策略:
spring.jpa.hibernate.naming.implicit-strategy
它们使用的是类似的Hibernate命名策略类,比如org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
和org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl
。
感谢您的耐心阅读,希望本文解决了您的问题。