0
我使用jackson-datatype-jsr310
來支持Java 8時間數據類型。LocalDateTime未序列化爲時間戳
我創建了一個ObjectMapper這樣的:
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.configure(SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS, false);
objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, true);
objectMapper.registerModule(new JavaTimeModule());
Foo foo = new Foo();
LocalDateTime t = LocalDateTime.now();
foo.setT1(Date.from(t.toInstant(ZoneOffset.UTC)));
foo.setT2(Timestamp.valueOf(t));
foo.setT3(t);
System.out.println(objectMapper.writeValueAsString(foo));
並解析一個LocalDateTime後來我[2016,12,21,15,53,57,178]
不1482306837178
這裏是我的測試模型類Foo
public class Foo {
private Date t1;
private Timestamp t2;
private LocalDateTime t3;
// Getters & Setters
}
我看到的問題Jackson Java 8 DateTime serialisation並且問題所有者獲得了一個像1421261297.356000000
這樣的序列化字符串。我沒有知道如何得到那個。我正在使用jackson 2.8.5和datatype-jsr310
。
哪裏'BigDecimal'來這裏? – shmosel
對不起,我的錯字。 @shmosel – bitweaver
'println()'的完整輸出是什麼? – shmosel