Rumah >Java >javaTutorial >Bagaimana untuk Mensirikan ZonedDateTime dalam Format ISO dengan Spring Data JPA dan Jackson?

Bagaimana untuk Mensirikan ZonedDateTime dalam Format ISO dengan Spring Data JPA dan Jackson?

DDD
DDDasal
2024-12-10 00:13:11387semak imbas

How to Serialize ZonedDateTime in ISO Format with Spring Data JPA and Jackson?

Spring Data JPA - Mensiri ZonedDateTime sebagai Format ISO

Apabila bekerja dengan ZonedDateTime dalam Spring Data JPA, siri JSONnya boleh membawa kepada pemindahan data yang berlebihan. Untuk mengurangkan isu ini, mari kita terokai cara memformat ZonedDateTime kepada format ISO untuk penyiaran yang cekap.

Penyelesaian Menggunakan Modul Jackson untuk Java 8 Date Time API

Untuk berkesan mengendalikan siri ZonedDateTime, pasang modul Jackson untuk Java 8 Date Time API.

<dependency>
    <groupId>com.fasterxml.jackson.datatype</groupId>
    <artifactId>jackson-datatype-jsr310</artifactId>
    <version>2.6.0</version>
</dependency>

Gunakan modul seperti berikut:

ObjectMapper objectMapper = new ObjectMapper();
objectMapper.registerModule(new JavaTimeModule());

Dalam kelas Entiti anda:

@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSZ")
public ZonedDateTime getTime() {
    return time;
}

Ini akan memformatkan ZonedDateTime kepada format ISO semasa JSON siri.

Nota untuk Versi Jackson 2.4.x

Jika anda menggunakan Jackson 2.4.x, gantikan talian pendaftaran dengan:

objectMapper.registerModule(new JSR310Module());

Atas ialah kandungan terperinci Bagaimana untuk Mensirikan ZonedDateTime dalam Format ISO dengan Spring Data JPA dan Jackson?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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