我想反序列化使用傑克遜現有的JSON文件,並想知道是否有可能執行下面的翻譯,而不訴諸一堆自定義反序列化。傑克遜陣列元素POJO
輸入JSON看起來是這樣的:
{
"type": "foo",
"content": ["a", "b", {"some": "object", "goes": "here"}, 4]
}
第3個content
元素不改變,總是字符串,字符串,SomeDataStructure,整型(可選)
而且我想反序列化到這樣的事情:
class Foo {
public static class FooContent {
String some;
String goes;
}
String aString;
String bString;
FooContent content;
Integer cInt;
}
現在我已經遇到BeanAsArrayDeserializer,這聽起來喜歡它可能是我想要的,但我似乎無法找到任何東西,甚至像一段示例代碼,讓我開始。
那麼,有什麼想法?
Nice code snippet Michal。看起來它只適用於單深度數組。你碰巧知道一個跟蹤嵌套數組索引而不用某種類型的字典來跟蹤數組/對象深度的簡單方法嗎?一直在想這個問題一段時間,領導可能會有所幫助。 – Conor 2015-10-28 22:42:07
以上代碼是僅適用於上述數據結構的自定義實現。如果我們想要編寫更通用的解決方案,我們必須編寫新的陣列解串器,並嘗試配置它併爲屬性添加索引。 (反序列化器必須知道會發生什麼)。您可以使用示例'JSON'和'POJO'結構在SO上創建新問題。 – 2015-10-29 17:48:03