Rumah >Java >javaTutorial >Bagaimana untuk Mensiri Java 8 LocalDateTime ke JSON dengan betul dalam Boot Spring?

Bagaimana untuk Mensiri Java 8 LocalDateTime ke JSON dengan betul dalam Boot Spring?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-23 22:27:11217semak imbas

How to Properly Serialize Java 8 LocalDateTime to JSON in Spring Boot?

Menukar Java 8 LocalDateTime kepada JSON dalam Spring Boot

Dalam Spring Boot, memformat objek Java 8 LocalDateTime untuk output JSON boleh menimbulkan cabaran. Walaupun pemformatan tarikh tradisional berfungsi seperti yang diharapkan, LocalDateTime membentangkan isu pemformatan yang unik.

Satu masalah biasa ialah medan LocalDateTime ditukar kepada struktur terperinci dengan atribut seperti "tahun," "bulan," dan seterusnya, sebaliknya daripada perwakilan rentetan yang mudah. Untuk menangani isu ini, konfigurasi tambahan diperlukan.

Untuk menyelesaikan masalah ini, ikut langkah berikut:

  1. Tambah Kebergantungan Jackson:

    • Sertakan kebergantungan berikut dalam anda projek:

      compile("com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.4.0")
  2. Konfigurasi Spring:

    • Tambah baris berikut pada anda fail application.properties:

      spring.jackson.serialization.write_dates_as_timestamps=false
    • Ini akan memastikan penukar yang betul digunakan untuk menyusun tarikh sebagai rentetan.

Kini, Spring Boot akan mendaftarkan penukar LocalDateTime secara automatik. Walau bagaimanapun, jika anda ingin menyesuaikan format tarikh, anda boleh menggunakan anotasi berikut:

  • @JsonFormat: Gunakan anotasi ini untuk menentukan format tarikh yang dikehendaki.
  • @DateTimeFormat: Gunakan anotasi ini untuk menentukan tarikh ISO format.

Nota: Dalam Spring Boot 2.x, langkah konfigurasi yang diterangkan di atas tidak lagi diperlukan, kerana Spring kini mengendalikan penukaran LocalDateTime secara asli.

Atas ialah kandungan terperinci Bagaimana untuk Mensiri Java 8 LocalDateTime ke JSON dengan betul dalam Boot Spring?. 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