"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo almacenar fecha/hora y marcas de tiempo en UTC con JPA e Hibernate?

¿Cómo almacenar fecha/hora y marcas de tiempo en UTC con JPA e Hibernate?

Publicado el 2024-11-08
Navegar:778

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

Almacenamiento de fecha/hora y marcas de tiempo en UTC con JPA e Hibernate

En Java Persistence API (JPA) e Hibernate, gestión de fecha/hora y los valores de marca de tiempo en diferentes zonas horarias pueden ser un desafío. Para garantizar un almacenamiento y recuperación coherentes de la hora UTC (hora universal coordinada), es crucial configurar el marco de manera adecuada.

Considere la entidad JPA anotada proporcionada:

public class Event {
    @Id
    public int id;

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

Para almacenar la fecha/hora en la zona horaria UTC, la propiedad hibernate.jdbc.time_zone se puede configurar de la siguiente manera:

Usando Properties.xml

En el archivo de configuración JPA properties.xml, agregue la siguiente propiedad:

Usando Spring Boot

Si usa Spring Boot, agregue esta propiedad a su aplicación.properties archivo:

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

Con esta configuración, las fechas y las marcas de tiempo se almacenarán y recuperarán en la zona horaria UTC. Por ejemplo, si la fecha es 2008-02-03 9:30 am hora estándar del Pacífico (PST), se almacenará como 2008-02-03 5:30 pm UTC en la base de datos. Cuando se recupere, se interpretará como hora UTC, por lo que las 5:30 p. m. UTC siguen siendo las 5:30 p. m. UTC incluso después de la conversión a otra zona horaria.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3