如何使用ObjectMapper转换部分jackson文件

时间:2015-11-29 15:39:16

标签: json jackson

我有一个像这样的json文件:

[{name:object1},{name:object2}]

我可以通过以下方式阅读:

mapper.readValue(myJsonFile, MyObject.class);

但是,现在文件已更改为:

{"status":true, "result":[{name:object1},{name:object2}]}

现在如何阅读MyObject?

1 个答案:

答案 0 :(得分:1)

首先获取结果的JSONNode,然后以root身份使用该节点进行解析。

public static void main(String[] args) {

    ObjectMapper om = new ObjectMapper();
    InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream("wrapper.json");
    try {
        JsonNode node = om.readValue(in, JsonNode.class).get("result");
        JsonParser parser = node.traverse();
        List l = om.readValue(parser, List.class); //Read to MyObject instead of List.
        System.out.println(l);
    } catch (Exception e){
        e.printStackTrace();
    }
}