![](/img/trans.png)
[英]How to initialize LocalDateTime as TIMESTAMP in mysql with hibernate?
[英]Java 8 + Hibernate 5 MySQL TIMESTAMP/DATETIME to LocalDateTime Mapping
决定更新到Hibernate 5以删除现有的Date to LocalDateTime转换。 我从Maven安装了hibernate-java8工件。 然后我将我的hibernate实体日期时间替换为
@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
我以为Java 8 + Hibernate 5支持LocalDateTime? 请指教。
只需删除行: @Temporal (TemporalType.TIMESTAMP)
在每种情况下定义它。
Hibernate 5读取LocalDateTime作为类型,并正确地将数据作为时间戳插入数据库。 由于他们发布了产品和文档,因此目前没有太多信息。
@Column(name = "updated", columnDefinition="DATETIME")
private LocalDateTime updated;
@Column(name = "created", columnDefinition="TIMESTAMP")
private LocalDateTime created;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.