ホームページ  >  記事  >  Java  >  JPA と Hibernate を使用して日付/時刻とタイムスタンプを UTC で保存するにはどうすればよいですか?

JPA と Hibernate を使用して日付/時刻とタイムスタンプを UTC で保存するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-06 07:08:02414ブラウズ

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

JPA と Hibernate を使用した UTC での日付/時刻とタイムスタンプの保存

Java Persistence API (JPA) と Hibernate での日付/時刻の管理また、異なるタイムゾーンにまたがるタイムスタンプ値は課題となる可能性があります。 UTC (協定世界時) 時間の一貫した保存と取得を保証するには、フレームワークを適切に構成することが重要です。

提供される注釈付き JPA エンティティを検討してください。

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

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

日付を保存するにはUTC タイムゾーンの /time では、hibernate.jdbc.time_zone プロパティは次のように構成できます。

Properties.xml の使用

JPA 構成ファイル property.xml 、次のプロパティを追加します:

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

Spring Boot を使用する

Spring Boot を使用する場合は、このプロパティを application.properties ファイルに追加します:

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

この設定では、日付とタイムスタンプは UTC タイムゾーンで保存および取得されます。たとえば、日付が太平洋標準時 (PST) 2008-02-03 午前 9:30 の場合、データベースには 2008-02-03 午後 5:30 UTC として保存されます。取得すると UTC 時間として解釈されるため、別のタイムゾーンに変換した後でも、UTC の午後 5 時 30 分は UTC の午後 5 時 30 分のままになります。

以上がJPA と Hibernate を使用して日付/時刻とタイムスタンプを UTC で保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。