我想知道是否可以使用Jackson將[Joda DateTime
]對象序列化爲ISO8601 String
,而無需創建自定義JsonSerializer<DateTime>
。如何使用Jackson 2.0將DateTime對象序列化爲ISO8601?
當然,這是一個足夠常見的函數,它是建立在庫的某個地方?我能找到的最接近的是SerializationFeature.WRITE_DATES_AS_TIMESTAMPS
,但這似乎只適用於Date
對象。
編輯:
我發現this class:ISO8601DateFormat
,但是當我嘗試下面的代碼我沒有得到一個字符串ISO8601:
ObjectMapper mapper = new ObjectMapper();
mapper.setDateFormat(new ISO8601DateFormat());
mapper.writer().writeValueAsString(DateTime.now());
貌似傑克遜不把日期和DateTime對象平等。
UPDATE:
我最後寫了ISO8601日期時間字符串自定義序列。
如果你不介意的話,這將是很好,如果你能拼出的答案,自定義序列化需要什麼以及如何有線起來。謝謝! – Patrick 2012-09-05 15:50:08