小编use*_*052的帖子

Jackson JSON 到 Java 映射,用于具有不同数据类型的相同属性

我有一个 JSON 对象,我无法控制它并希望将它映射到一个预先创建的 Java 对象。JSON 对象中有一个属性可以是 URL,也可以是 JSONArray。

Class SomeClass {

    private URL items;

    public URL getURL() {
        return items;
    }

    public void setURL(URL url) {
        this.items = url;
    }
}
Run Code Online (Sandbox Code Playgroud)

以下是 JSON:

案例一:

{
...
    items: http://someurl.abc.com/linktoitems,
...
}
Run Code Online (Sandbox Code Playgroud)

或者

案例B

{
...
    items: [
            { "id": id1, "name": name1 },
            { "id": id2, "name": name2 }
           ]
...
}
Run Code Online (Sandbox Code Playgroud)

如果我创建 POJO 来映射案例 A,案例 B 会失败,反之亦然。简而言之,有没有办法将 JSON 属性映射到具有不同数据类型的 POJO 字段?在这种情况下,我将在名为的 POJO 中创建两个单独的字段,

private URL itemLink;
private Item[] itemList;
Run Code Online (Sandbox Code Playgroud)

mapping json jackson

5
推荐指数
1
解决办法
2316
查看次数

标签 统计

jackson ×1

json ×1

mapping ×1