透過Spring Boot 將Java 8 LocalDateTime 格式化為JSON
在序列化和反序列化過程中保持時態資料的一致且直觀的格式對於現代至關重要應用程式開發。然而,在 Spring Boot 應用程式中格式化 Java 8 LocalDateTime 物件通常會帶來挑戰。
問題:
當嘗試在 Spring Boot 應用程式中格式化 LocalDateTime物件時,使用者可能會遇到類似以下內容的詳細輸出:
"startDate" : { "year" : 2010, "month" : "JANUARY", "dayOfMonth" : 1, "dayOfWeek" : "FRIDAY", "dayOfYear" : 1, "monthValue" : 1, "hour" : 2, "minute" : 2, "second" : 0, "nano" : 0, "chronology" : { "id" : "ISO", "calendarType" : "iso8601" } }
Desired結果:
目標是將 LocalDateTime物件格式化為更簡潔易讀的格式,例如:
"startDate": "2015-01-01"
解決方案:
為了實現所需的格式,使用者必須先將以下依賴項目添加到他們的項目:
compile("com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.4.0")
此依賴項引入了一個自動處理LocalDateTime 物件轉換的轉換器。此外,必須將以下配置新增至 application.properties 檔案:
spring.jackson.serialization.write_dates_as_timestamps=false
透過將此屬性設為 false,Spring 將利用適當的轉換器將日期格式化為字串而不是時間戳。如果需要特定的格式,可以使用 @JsonFormat 和 @DateTimeFormat 等註解。
以上是如何使用 Spring Boot 以 JSON 格式簡潔地格式化 Java 8 LocalDateTime 物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!