【发布时间】:2016-08-23 21:25:27
【问题描述】:
我收到一个 JSON 对象数组,它们都具有 content 字段,但该字段的类型可能不同:
[
{
"id": "primaryBodyHeader",
"type": "RichText",
"content": "<h1>Alice's Adventures in Wonderland</h1>"
},
{
"id": "1027",
"type": "RichText",
"content": {
"value": "RVMtMTk=",
"contentType": "DynamicContent"
}
}
]
我有豆子:
public abstract class LandingPageContentItem {
private String id;
private String type;
private String content;
}
至少我想在 content 为文本时将其映射到文本字段(非文本内容为 null)
最多,我想根据字段的类型将不同种类的项目映射到不同的子类内容 - TextContentItem,ComplexContentItem 等等。 @JsonSubTypes 不能这样做
有没有办法在没有自定义反序列化器的情况下做到这一点?
【问题讨论】:
标签: java json jackson json-deserialization