5
我有一個案例類,我想能夠序列化和反序列化JSON:序列化列表[任何] /從Json的Scala中使用傑克遜
case class Foo(values: List[Any])
例如
Foo(List(new DateTime))
在這種情況下,DateTime被序列化爲一個long,因此反序列化爲Long而不是dateTime。
像這樣:
{"values":[1315343106920]}
建議?我認爲需要發生的是類的名稱(例如DateTime)需要序列化出來,並檢查反序列化。我可能放在值列表中的類型列表是有限/小的。
也許是這樣的:
{"values":[{"DateTime":1315343106920}]}
不知道是否會有所幫助,但Jerkson [https://github.com/codahale/jerkson]是傑克遜的特定斯卡拉擴展,並且可以處理這種情況下比普通傑克遜更好?還有傑克遜擴展模塊[https://github.com/FasterXML/jackson-module-scala],同樣旨在改善特定於scala的用法。 – StaxMan