一尘不染

如何使用JPA和Hibernate在UTC时区中存储日期/时间和时间戳

hibernate

如何配置JPA /hibernate模式以UTC(GMT)时区在数据库中存储日期/时间?考虑以下带注释的JPA实体:

public class Event {
    @Id
    public int id;

    @Temporal(TemporalType.TIMESTAMP)
    public java.util.Date date;
}

如果日期为太平洋标准时间(PST)2008-Feb-03 9:30 am,那么我希望数据库中存储2008-Feb-03 5:30
pm的UTC时间。同样,从数据库中检索日期时,我希望将其解释为UTC。因此,在这种情况下530pm是UTC
530pm。显示时,它将被格式化为太平洋标准时间上午9:30。


阅读 286

收藏
2020-06-20

共1个答案

一尘不染

使用Hibernate 5.2,您现在可以使用以下配置属性来强制UTC时区:

<property name="hibernate.jdbc.time_zone" value="UTC"/>

有关更多详细信息,请查看本文

2020-06-20