在 Spring Boot 中格式化 JSON LocalDateTime
在 Spring Boot 应用程序中,将 Java 8 LocalDateTime 值格式化为 JSON 可能会带来挑战。虽然转换常规日期很简单,但 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" } }
要解决此问题,请按照以下步骤操作:
添加JSR-310 转换器依赖项:
<dependency> <groupId>com.fasterxml.jackson.datatype</groupId> <artifactId>jackson-datatype-jsr310</artifactId> </dependency>
此依赖项提供 Spring 将自动注册的转换器。
配置应用程序属性:
spring.jackson.serialization.write_dates_as_timestamps=false
此设置可确保使用正确的转换器,从而产生以下格式:
"startDate": "2016-03-16T13:56:39.492"
自定义日期格式(可选) ):
使用@JsonFormat注解覆盖默认格式:
@JsonFormat(pattern="yyyy-MM-dd") public LocalDateTime getStartDate() { return startDate; }
以上是如何在 Spring Boot 中正确格式化 LocalDateTime JSON?的详细内容。更多信息请关注PHP中文网其他相关文章!