2
我想要將包含接口的對象的JSON表示反序列化爲其屬性之一。對象的類看起來像這樣:反序列化具有接口屬性而不使用註釋的JSON類
class A {
B b;
}
Interface B {
//some content
}
Class C implements B {
}
Class D implements B {
}
我認爲傑克遜是最好的做到這一點。
最簡單的方法是在解決方案here中提到的在接口B上面添加一些註釋。但是這裏的問題是我沒有權限改變任何這些類或接口。所以我不能把註釋放在A類中。還有另一種方法可以實現嗎?
您必須使用[自定義反序列化器](http://www.baeldung.com/jackson-deserialization)。 – 2014-12-07 10:27:21
@BoristheSpider是的,我想過寫一個類與A完全相同的類,並將json反序列化爲該對象。但接下來我將不得不手動設置類A對象的每個成員 – Alex 2014-12-07 10:50:25
我不理解您的評論。在「ObjectMapper」中添加一個反序列化器,並在其中添加自定義邏輯。 – 2014-12-07 12:17:00