在RPC接口调用的时候,经常会遇到这样的问题,本身是一个JsonNode对象,但是由于对象接口的返回形式,只获取到了Map或Object等其他形式的对象,为了方便进行属性值的获取,需要进行对象的转换,可以利用import com.fasterxml.jackson.databind.JsonNode与
import com.fasterxml.jackson.databind.ObjectMapper实现:
(1)将Java对象转换为json字符串
(2)json字符串转换为JsonNode
提供一个demo:

Map<String, Object> retMap = metricService.getTree(business, id, type, isLabel);//RPC

        ObjectMapper mapper = new ObjectMapper();
        String json = mapper.writeValueAsString(retMap.get("data"));
        JsonNode data = mapper.readTree(json);

        JsonNode result = data.findValue("result");
        Iterator<JsonNode> elements = result.elements();
        while (elements.hasNext()){
            JsonNode node = elements.next();
            String label = node.findValue("label").asText();
            System.out.println(label);
        }