首頁  >  文章  >  Java  >  如何使用 JPA 和 Hibernate 以 UTC 格式儲存日期/時間?

如何使用 JPA 和 Hibernate 以 UTC 格式儲存日期/時間?

Barbara Streisand
Barbara Streisand原創
2024-11-02 21:01:30328瀏覽

How to Store Date/Time in UTC with JPA and Hibernate?

使用JPA 和Hibernate 在UTC 時區儲存日期/時間

在JPA/ 中處理日期和時間時擔心時區差異休眠應用程式?本文探討如何在 UTC (GMT) 時區有效儲存和檢索時態數據,確保跨不同時區進行一致且準確的處理。

考慮下面帶註釋的JPA 實體:

<code class="java">public class Event {
    @Id
    public int id;

    @Temporal(TemporalType.TIMESTAMP)
    public java.util.Date date;
}</code>

要確保存儲的日期反映UTC 時間:

解決方案:

從Hibernate 5.2 開始,設定UTC 時區就簡化了。透過將以下屬性新增至JPA 設定檔(properties.xml):

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

,或對於Spring Boot 應用程序,將此屬性新增至application.properties:

<code class="properties">spring.jpa.properties.hibernate.jdbc.time_zone=UTC</code>

此配置可確保所有時態資料都在UTC 時區儲存和檢索。例如,日期 2008 年 2 月 3 日上午 9:30 太平洋標準時間 (PST) 將在資料庫中儲存為 2008 年 2 月 3 日下午 5:30 UTC,並在檢索時按此解釋。

以上是如何使用 JPA 和 Hibernate 以 UTC 格式儲存日期/時間?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn