Hibernate Java 8 ZonedDateTime

时间:2017-08-14 13:30:16

标签: hibernate jpa java-8 java-time zoneddatetime

我正在使用Hibernate和JPA将我的数据存储在数据库中。 现在,我想从public openWebMwthod() : Observable<any>{ this.initializeApp(); let details = { "EmpID" : this.sapId }; let body = JSON.stringify(details); let headers = new Headers( { 'Content-Type': 'application/json', } ); let options = new RequestOptions({headers:headers}); return this.http.post(URL,body,options) .map( (res) => res.json()) } 保存ZonedDateTime

问题是,Hibernate只会坚持日期和时间。它不关心java.time或偏移。

有没有办法说服Hibernate保留这些信息?

1 个答案:

答案 0 :(得分:1)

hibernate 5支持java8 datetime类型,通过添加hibernate-java8依赖,但在5.2.10版本中这个转移到了hibernate核心

(不赞成使用hibernate-core)支持Java8特有的功能 - 主要是Java8日期/时间(JSR 310)

<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-java8 -->
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-java8</artifactId>
</dependency>

有关hibernate和datetime的更多信息,请参阅

import java.time.Instant;

@Column(name = "reset_date")
private Instant resetDate = null;


setResetDate(Instant.now());

https://www.thoughts-on-java.org/hibernate-5-date-and-time/