簡體   English   中英

ZonedDateTime使用FasterXML Jackson序列化紀元毫秒

[英]ZonedDateTime serialize epoch milliseconds with FasterXML Jackson

我打算使用epoch毫秒來進行反序列化和序列化。 但是,只有反序列化工作,但無法序列化回正確的ZonedDateTime

ObjectMapper mapper = new ObjectMapper();
mapper.setTimeZone(TimeZone.getDefault());
mapper.registerModule(new JavaTimeModule());
mapper.configure(SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS, false);

System.out.println(mapper.writeValueAsString(ZonedDateTime.now()));  // print 1493703996728 [Expected]
System.out.println(mapper.readValue("1493703996728", ZonedDateTime.class)); // print +49303-08-07T00:52:08+08:00[Asia/Singapore] [Unexpected]

如何讓序列化獲取2017-05-02T13:46:36.728+08:00[Asia/Singapore]

com.fasterxml.jackson。*的版本都是2.8.8

您還需要禁用反序列化的納秒來使Jackson解析毫秒:

mapper.configure(DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS, false);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM