0
目前,我接收到該JSON輸入,這是我有沒有任何控制:(傑克遜)如何反序列化包裝數組?
{
"A" : {
"B" : {
"B" : [{
"Whatever" : "String",
"Number": 123
}
],
"SiblingObject" : true
}
}
}
基本上,我想反序列化乙陣列B對象內部直接的到A類,而無需創建另一額外的類來包裝B對象。事情是這樣的:
public class A {
private List<B> bList;
public List<B> getB() {
return bList;
}
@JsonProperty("B")
public void setB(List<B> bList) {
this.bList = bList;
}
}
我試着做
public class A {
private List<B> bList;
public List<B> getB() {
return bList;
}
@JsonProperty("B")
public void setB(Map<String, Object> bList) {
this.bList = (List<B>) bList.get("B");
}
}
,但無濟於事。
任何想法?
我能想到的最簡單的解決辦法是繼續創建包裝類,但隨後通過使用基於字段註釋和忽略的getter/setter方法我將有公共API與你想要的一樣。另一種選擇是使用自定義的JsonDeserializer,但這似乎是解決這個問題的很多工作。 – Pace