一尘不染

JPA对Java 8新日期和时间API的支持

java

我将Java 8用于新项目。

我正在尝试在Java 8中使用新的日期和时间api,但是我不知道是否JPA 2.1完全支持此新的日期和时间API。

请分享您在JPA对Java 8中新日期和时间API的支持中的经验/意见。

我可以通过JPA 2.1安全地在Java 8中使用新的日期和时间api吗?

更新:

我正在使用Hibernate(4.3.5.Final)作为JPA实现。


阅读 347

收藏
2020-03-19

共1个答案

一尘不染

对于Hibernate 5.X,只需添加

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-java8</artifactId>
        <version>${hibernate.version}</version>
    </dependency>

@NotNull
@Column(name = "date_time", nullable = false)
protected LocalDateTime dateTime;

无需任何额外努力即可工作。参见https://hibernate.atlassian.net/browse/HHH-8844

更新:

请看一下Jeff Morin的评论:自Hibernate 5.2.x以来就足够了

 <dependency>
     <groupId>org.hibernate</groupId>
     <artifactId>hibernate-core</artifactId>
     <version>5.2.1.Final</version>
 </dependency>
 <dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-...</artifactId>
     <version>4.3.1.RELEASE</version>
 </dependency>
2020-03-19