我正在使用Jackson將JSON從ReST API反序列化爲使用Jackson的Java對象。使用Jackson反序列化包裝在具有未知屬性名稱的對象中的JSON
我碰到的問題是,一個特定的休息響應返回包裹在由數字標識符引用的對象,像這樣:
{
"1443": [
/* these are the objects I actually care about */
{
"name": "V1",
"count": 1999,
"distinctCount": 1999
/* other properties */
},
{
"name": "V2",
"count": 1999,
"distinctCount": 42
/* other properties */
},
...
]
}
我(也許是幼稚)的方法來反序列化JSON,直到這一點是創建鏡像POJO,讓傑克遜簡單地自動映射所有的字段,它很好地完成。
問題是,ReST響應JSON對我實際需要的POJO數組有一個動態的數字引用。我無法創建鏡像圖像包裝器POJO,因爲屬性名稱本身既是動態的也是非法的Java屬性名稱。
我很感激任何和我可以調查的路線的所有建議。
A)您的JSON無效:缺少']'。 B)使用對象數組來防止你的問題(如果我對你的示例有足夠的理解,因爲它有點有限) –
A)謝謝;我已經更新了示例JSON B)當然,對象數組恰恰是我的目標,但是我根本無法真正進入數組,因爲它的屬性名稱引用了動態和非法的Java –