Rumah > Java > javaTutorial > teks badan

Bagaimana untuk Menyimpan Tarikh/Masa dan Cap Masa dalam UTC dengan JPA dan Hibernate?

Susan Sarandon
Lepaskan: 2024-11-06 07:08:02
asal
497 orang telah melayarinya

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

Menyimpan Tarikh/Masa dan Cap Masa dalam UTC dengan JPA dan Hibernate

Dalam Java Persistence API (JPA) dan Hibernate, menguruskan tarikh/masa dan nilai cap masa merentas zon waktu yang berbeza boleh menjadi satu cabaran. Untuk memastikan penyimpanan dan pengambilan masa UTC (Coordinated Universal Time) yang konsisten, adalah penting untuk mengkonfigurasi rangka kerja dengan sewajarnya.

Pertimbangkan entiti JPA beranotasi yang disediakan:

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

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

Untuk menyimpan tarikh /masa dalam zon waktu UTC, sifat hibernate.jdbc.time_zone boleh dikonfigurasikan seperti berikut:

Menggunakan Properties.xml

Dalam fail konfigurasi JPA properties.xml , tambahkan sifat berikut:

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

Menggunakan Spring Boot

Jika menggunakan Spring Boot, tambahkan sifat ini pada application.properties fail:

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

Dengan konfigurasi ini, tarikh dan cap masa akan disimpan dan diambil dalam zon waktu UTC. Contohnya, jika tarikh ialah 2008-02-03 9:30pg Waktu Piawai Pasifik (PST), ia akan disimpan sebagai 2008-02-03 5:30ptg UTC dalam pangkalan data. Apabila diambil, ia akan ditafsirkan sebagai waktu UTC, jadi 5:30 ptg UTC kekal 5:30 ptg UTC walaupun selepas penukaran kepada zon waktu yang lain.

Atas ialah kandungan terperinci Bagaimana untuk Menyimpan Tarikh/Masa dan Cap Masa dalam UTC dengan JPA dan Hibernate?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan