Java 8+;Hibernate 5 MySQL时间戳/DATETIME到LocalDateTime的映射

Java 8+;Hibernate 5 MySQL时间戳/DATETIME到LocalDateTime的映射,java,mysql,hibernate,hibernate-5.x,Java,Mysql,Hibernate,Hibernate 5.x,决定更新到Hibernate 5以删除现有的Date到LocalDateTime转换。我从Maven安装了hibernate-java8工件。然后我替换了我的hibernate实体date time @Column (name = "mis_a_jour_au", nullable = false) @Temporal (TemporalType.TIMESTAMP) private LocalDateTime misAJourAu; @Column (name = "envoi_au", n

决定更新到Hibernate 5以删除现有的Date到LocalDateTime转换。我从Maven安装了hibernate-java8工件。然后我替换了我的hibernate实体date time

@Column (name = "mis_a_jour_au", nullable = false)
@Temporal (TemporalType.TIMESTAMP)
private LocalDateTime misAJourAu;

@Column (name = "envoi_au", nullable = false)
@Temporal (TemporalType.TIMESTAMP)
private LocalDateTime envoiAu;
已引发此异常

org.hibernate.AnnotationException:@Temporal只能在java.util.Date或java.util.Calendar属性上设置

如果我删除@Temporal,那么异常将变为

ClassCastException:java.util.Date不能强制转换为java.time.LocalDateTime

我认为Java8+Hibernate5支持LocalDateTime?请告知。

只需删除该行即可:
@Temporal(TemporalType.TIMESTAMP)
在每种情况下,您都定义了它


Hibernate 5读取LocalDateTime作为类型,并将数据作为时间戳正确插入数据库。目前没有太多信息,因为他们发布了产品,随后将发布文档。

上次我检查时,它只支持日期和日历。您好,我正在使用java8,我也读到了这篇文章:,上面说hibernate-java8工件支持LocalDateTime。我不太明白hibernate除了converter之外是如何处理类型的,所以我需要一些帮助。对不起,我没有注意到这篇文章是一篇旧文章。不幸的是,我没有为您准备和回答。但JPA似乎不支持LocalDateTime。这里有一篇(最近)关于它的文章,以及如何解决它。我希望这有助于我目前正在使用此解决方案,但我想删除它,因为我在Hibernate 5中看到了LocalDateTime支持。无论如何谢谢你!
@Column(name = "updated", columnDefinition="DATETIME")
private LocalDateTime updated;

@Column(name = "created", columnDefinition="TIMESTAMP")
private LocalDateTime created;