为什么 Jackson 将 ZonedDateTime 转换为十进制?

BOU*_*LID 5 java spring jackson zoneddatetime

我试图理解为什么 Jackson 在 Spring 集成测试中获取 MvcResult 时将 ZonedDateTime 转换为 Decimal ?

这是预计日期:2019-10-01T10:10:44+02:00[欧洲/巴黎] 实际结果:1572426644.000000000

Gus*_*ini 2

如果您使用 Spring Boot,您可以使用以下属性以更通用的方式解决它:

spring.jackson.serialization.WRITE_DATES_AS_TIMESTAMPS=false
Run Code Online (Sandbox Code Playgroud)

这样您就不需要为每个日期字段指定 JsonFormat。

如果您还想全局自定义日期格式,请使用以下属性:

spring.jackson.date-format
Run Code Online (Sandbox Code Playgroud)

来源:https ://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html