Json操作(汇总)

利用:com.fasterxml.jackson

原文地址:https://blog.csdn.net/joyous/article/details/9448461

说明:Map转化为Json;创建Json,添加节点或Array

原文地址:https://www.cnblogs.com/winner-0715/p/6109225.html

说明:Java对象转化为Json

原文地址:http://neverflyaway.iteye.com/blog/2299805

说明:读写Json文件,遍历JsonNode数组

原文地址:https://blog.csdn.net/u014452858/article/details/45650817

说明:jsonGenerator

原文地址:https://blog.csdn.net/jay_1989/article/details/51262059

说明:两种生成Json的方法。方法一:一个个结点创建。方法二:拼接字符串创建。

【方法一】生成Json

    package com.pcmall;  
      
    import com.fasterxml.jackson.databind.ObjectMapper;  
    import com.fasterxml.jackson.databind.node.ArrayNode;  
    import com.fasterxml.jackson.databind.node.ObjectNode;  
      
    public class CreateJson {  
        /**  
         * 创建一个 json,并向该 json 添加内容  
         */    
        public static void MyTest04()    
        {    
          try    
          {    
            ObjectMapper mapper = new ObjectMapper();    
            ObjectNode root1 = mapper.createObjectNode();    
            
            root1.put("nodekey1", 1);    
            root1.put("nodekey2", 2);    
            
            System.out.println(root1.toString());    
            
          //Create the root node    
            ObjectNode root = mapper.createObjectNode ();    
            //Create a child node    
            ObjectNode node1 = mapper.createObjectNode ();    
            node1.put ("nodekey1", 1);    
            node1.put ("nodekey2", 2);    
            //Bind the child nodes    
            root.put ("child", node1);    
            //Array of nodes    
            ArrayNode arrayNode = mapper.createArrayNode ();    
            arrayNode.add (node1);    
            arrayNode.add (1);    
            //Bind array node    
            root.put ("arraynode", arrayNode);    
            
            System.out.println (mapper.writeValueAsString (root));    
            // 得到的输出信息    
            // {"child":{"nodekey1":1,"nodekey2":2},"arraynode":[{"nodekey1":1,"nodekey2":2},1]}    
          }    
          catch (Exception e)    
          {    
            
          }    
        }    
          
        public static void main(String[] args){  
            MyTest04();  
        }  
    }  

输出结果:

{
    "child": {
        "nodekey1": 1,
        "nodekey2": 2
    },
    "arraynode": [{
        "nodekey1": 1,
        "nodekey2": 2
    },
    1]
}

【方法二】生成Json

String str = "{"data":{"hasnext":0,"info":[{"id":"288206077664983","timestamp":1371052476},{"id":"186983078111768","timestamp":1370944068},{"id":"297031120529307","timestamp":1370751789},{"id":"273831022294863","timestamp":1369994812}],"timestamp":1374562897,"totalnum":422},"errcode":0,"msg":"ok","ret":0,"seqid":5903702688915195270}";    
        ObjectMapper mapper = new ObjectMapper();    
        try {
            JsonNode root = mapper.readTree(str);
            System.out.println("root" + root.toString());
        } catch (IOException e) {
            e.printStackTrace();
        }  

输出结果:

root {
    "data": {
        "hasnext": 0,
        "info": [{
            "id": "288206077664983",
            "timestamp": 1371052476
        },
        {
            "id": "186983078111768",
            "timestamp": 1370944068
        },
        {
            "id": "297031120529307",
            "timestamp": 1370751789
        },
        {
            "id": "273831022294863",
            "timestamp": 1369994812
        }],
        "timestamp": 1374562897,
        "totalnum": 422
    },
    "errcode": 0,
    "msg": "ok",
    "ret": 0,
    "seqid": 5903702688915195270
}
原文地址:https://www.cnblogs.com/dlsunf/p/8926536.html