【发布时间】:2019-02-01 12:38:17
【问题描述】:
我刚刚根据新的(ish)java 8 时间包将我的许多日期转换为 LocalDateTime。到目前为止,我一直很喜欢这种切换,直到我开始尝试序列化和反序列化。
如何配置 Jackson 以支持它们?:
LocalDateTime --serialize--> UTC 时间戳 --deserialize--> LocalDateTime?
这里有很多关于转换为格式化字符串的材料,但我似乎找不到一个开箱即用的 utc 时间戳解决方案。
【问题讨论】:
-
如果是 UTC 时间戳,为什么不使用
Instant而不是LocalDateTime? -
@assylias,信不信由你:WRITE_DATES_AS_TIMESTAMPS 适用于日期。当 LocalDateTimes 开启时,Jackson 将其序列化为一组值。
-
@ernest_k,我还有其他原因想要使用 LocalDateTime。第三方 API 希望将其格式化为时间戳整数,因此我需要将其转换为与他们的系统交互。
-
@DanielPatrick 如果您注册
new JavaTimeModule(),它应该可以工作 - 请参阅此处:fasterxml.github.io/jackson-datatype-jsr310/javadoc/2.6/com/…
标签: java datetime java-8 jackson java-time