Heim  >  Artikel  >  Java  >  Wie speichere ich Datum/Uhrzeit in UTC mit JPA und Hibernate?

Wie speichere ich Datum/Uhrzeit in UTC mit JPA und Hibernate?

Barbara Streisand
Barbara StreisandOriginal
2024-11-02 21:01:30328Durchsuche

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

Datum/Uhrzeit in der UTC-Zeitzone mit JPA und Ruhezustand speichern

Besorgnis über Zeitzonenunterschiede bei der Verarbeitung von Datum und Uhrzeit in Ihrem JPA/ Anwendungen in den Ruhezustand versetzen? In diesem Artikel wird untersucht, wie Zeitdaten effektiv in der UTC-Zeitzone (GMT) gespeichert und abgerufen werden können, um eine konsistente und genaue Verarbeitung über verschiedene Zeitzonen hinweg sicherzustellen.

Betrachten Sie die unten annotierte JPA-Entität:

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

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

Um sicherzustellen, dass das gespeicherte Datum die UTC-Zeit widerspiegelt:

Lösung:

Seit Hibernate 5.2 ist die Konfiguration der UTC-Zeitzone vereinfacht. Durch Hinzufügen der folgenden Eigenschaft zu Ihrer JPA-Konfigurationsdatei (properties.xml):

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

oder für Spring Boot-Anwendungen durch Hinzufügen dieser Eigenschaft zu application.properties:

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

Diese Konfiguration stellt sicher, dass alle Zeitdaten in der UTC-Zeitzone gespeichert und abgerufen werden. Beispielsweise wird das Datum 03.02.2008 9:30 Uhr Pacific Standard Time (PST) als 03.02.2008 17:30 Uhr UTC in der Datenbank gespeichert und beim Abruf als solches interpretiert.

Das obige ist der detaillierte Inhalt vonWie speichere ich Datum/Uhrzeit in UTC mit JPA und Hibernate?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn