SpringBoot 1.3.0是否支持休眠5?
我对SpringBoot(1.3.0)对Hibernate5的支持有些困惑。该参考列出了对hibernate
4.3.11.Final的依赖关系,但同时也列出了对SpringFramework 4.2.3的依赖关系,其中包括对Hibernate5的支持。
仅仅是添加额外的Hibernate5依赖项以覆盖Boot捆绑包的问题吗?有人可以帮我澄清一下吗?
回答:
您可以在Spring Boot 1.3中使用Hibernate 4.3或Hibernate 5.0。如您所见,Hibernate 4.3.x是默认版本。
要使用Hibernate 5.0,您应该hibernate.version
在Spring Boot的依赖管理中覆盖该属性。假设您正在使用Maven:
<properties> <hibernate.version>5.0.5.Final</hibernate.version>
</properties>
使用Hibernate 5.0时,与使用Hibernate 4.3.x的最大不同是您将失去Spring Boot的自定义命名策略。由于Hibernate
5.0中所做的重大更改,您将在启动时看到类似以下的警告记录:
2015-12-07 10:04:56.911 WARN 81371 --- [ main] org.hibernate.orm.deprecation : HHH90000006: Attempted to specify unsupported NamingStrategy via setting [hibernate.ejb.naming_strategy]; NamingStrategy has been removed in favor of the split ImplicitNamingStrategy and PhysicalNamingStrategy; use [hibernate.implicit_naming_strategy] or [hibernate.physical_naming_strategy], respectively, instead.
如果您不喜欢Hibernate
5的默认设置,则可以分别application.properties
使用spring.jpa.properties.hibernate.implicit_naming_strategy
和spring.jpa.properties.hibernate.physical_naming_strategy
属性在Spring
Boot中指定自定义的隐式或物理命名策略。
以上是 SpringBoot 1.3.0是否支持休眠5? 的全部内容, 来源链接: utcz.com/qa/405383.html