休眠 5 的 joda 时间兼容性问题
Posted
技术标签:
【中文标题】休眠 5 的 joda 时间兼容性问题【英文标题】:jodatime compatiblility issue with hibernate 5 【发布时间】:2018-10-21 09:24:08 【问题描述】:我无法将 jodatime 与 hibernate 5 和 java 8 一起使用。
我正在将一个大型应用程序从 spring4/hibernate4/java7 迁移到 spring5/hibernate5/java8。
春季 5.0.5.RELEASE 休眠 5.2.16.Final
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.9.9</version>
</dependency>
<dependency>
<groupId>org.jadira.usertype</groupId>
<artifactId>usertype.jodatime</artifactId>
<version>2.0.1</version>
</dependency>
实体 Bean
@Type(type = "org.jadira.usertype.dateandtime.joda.PersistentLocalDate")
@Column(name="START_DATE")
private org.joda.time.LocalDate startDate;
由于现有代码,我无法使用 java8 时间库。我已经尝试过,但它最终带来了我可以管理的巨大变化。
有人有这方面的经验吗?
这是我在启动时遇到的错误。
java.lang.AbstractMethodError
at org.hibernate.type.CustomType.nullSafeGet(CustomType.java:119)
at org.hibernate.type.AbstractType.hydrate(AbstractType.java:82)
at org.hibernate.persister.entity.AbstractEntityPersister.hydrate(AbstractEntityPersister.java:2854)
【问题讨论】:
找到解决此错误的方法了吗? 【参考方案1】:您的 org.jadira.usertype 版本对于这个版本的 Hibernate 来说太旧了。您至少需要 5.0.0.GA 或 6.0.0.1.GA。
【讨论】:
以上是关于休眠 5 的 joda 时间兼容性问题的主要内容,如果未能解决你的问题,请参考以下文章