"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment stocker la date/heure et les horodatages au format UTC avec JPA et Hibernate ?

Comment stocker la date/heure et les horodatages au format UTC avec JPA et Hibernate ?

Publié le 2024-11-08
Parcourir:860

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

Stockage de la date/heure et des horodatages au format UTC avec JPA et Hibernate

Dans l'API de persistance Java (JPA) et Hibernate, gestion de la date/heure et les valeurs d'horodatage dans différents fuseaux horaires peuvent constituer un défi. Pour garantir un stockage et une récupération cohérents de l'heure UTC (temps universel coordonné), il est crucial de configurer le framework de manière appropriée.

Considérez l'entité JPA annotée fournie :

public class Event {
    @Id
    public int id;

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

Pour stocker la date/heure dans le fuseau horaire UTC, la propriété hibernate.jdbc.time_zone peut être configurée comme suit :

Utilisation de Properties.xml

Dans le fichier de configuration JPA Properties.xml, ajoutez la propriété suivante :

Utilisation de Spring Boot

Si vous utilisez Spring Boot, ajoutez cette propriété à votre application.properties file:

spring.jpa.properties.hibernate.jdbc.time_zone=UTC

Avec cette configuration, les dates et les horodatages seront stockés et récupérés dans le fuseau horaire UTC. Par exemple, si la date est le 03/02/2008 à 9h30, heure normale du Pacifique (PST), elle sera stockée sous la forme 03/02/2008 à 17h30 UTC dans la base de données. Une fois récupéré, il sera interprété comme l'heure UTC, donc 17h30 UTC reste 17h30 UTC même après la conversion vers un autre fuseau horaire.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3