首頁  >  文章  >  Java  >  如何在 Spring Boot 中正確地將 Java 8 LocalDateTime 序列化為 JSON?

如何在 Spring Boot 中正確地將 Java 8 LocalDateTime 序列化為 JSON?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-23 22:27:11131瀏覽

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

在 Spring Boot 中將 Java 8 LocalDateTime 轉換為 JSON

在 Spring Boot 中,格式化 Java 8 LocalDateTime 物件以進行 JSON 輸出可能會帶來挑戰。雖然傳統的日期格式按預期工作,但 LocalDateTime 存在獨特的格式問題。

一個常見問題是 LocalDateTime 欄位轉換為具有「年」、「月」等屬性的詳細結構,而不是一個簡單的字串表示形式。要解決此問題,需要進行額外配置。

要解決此問題,請按照以下步驟操作:

  1. 新增 Jackson 依賴項:

    • 在您的專案中:

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

    • 將以下行加入您的應用程式屬性file:

      spring.jackson.serialization.write_dates_as_timestamps=false
    • 這將確保使用正確的轉換器將確保使用正確的轉換器將確保使用正確的轉換器將日期序列化為字串。

現在,Spring Boot 將自動註冊一個 LocalDateTime 轉換器。但是,如果您想要自訂日期格式,可以使用以下註解:

  • @JsonFormat: 使用此註解指定所需的日期格式。
  • @DateTimeFormat: 使用此註解指定ISO 日期

注意:在Spring Boot 2.x 中,不再需要上述設定步驟,因為Spring 現在原生處理LocalDateTime 轉換。

以上是如何在 Spring Boot 中正確地將 Java 8 LocalDateTime 序列化為 JSON?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn