我想知道是否可以使用 Jackson 将 JodaDateTime
对象序列化为 ISO8601String
而无需创建自定义JsonSerializer<DateTime>
.
当然,这是一个足够常见的函数,它内置在某个地方的库中?我能找到的最接近的是 a SerializationFeature.WRITE_DATES_AS_TIMESTAMPS
,但这似乎只适用于Date
对象。
编辑:
我找到了这个类: ISO8601DateFormat
,但是当我尝试以下代码时,我没有得到 ISO8601 字符串:
ObjectMapper mapper = new ObjectMapper();
mapper.setDateFormat(new ISO8601DateFormat());
mapper.writer().writeValueAsString(DateTime.now());
看起来杰克逊没有平等对待 Date 和 DateTime 对象。
更新:
我最终为 ISO8601 DateTime 字符串编写了一个自定义序列化程序。