将数据文件JSON读取到JAVA

时间:2016-10-08 11:13:13

标签: java json

我遇到了JSON问题;我无法从portblock读取文件,但webblock可以完成

这是test.json

{
    "webblock" : ["www.google.com", "www.youtube.com", "www.facebook.com"],
    "portblock" : [{
            "key" : "80",
            "value" : "tcp"
        }, {
            "key" : "70",
            "value" : "udp"
        }
    ]
}

这是我使用的代码显示webblock

JSONArray msg = (JSONArray) jsonObject.get("webblock");
Iterator<String> iterator = msg.iterator();
while (iterator.hasNext()) {
    System.out.println(iterator.next());
    block_web(iterator.next());
}

帮助我显示portblock的键和值。

1 个答案:

答案 0 :(得分:2)

看看杰克逊。这段代码应该有效:

  1. 创建Pojo

    public class DomainName {
    
         List<String> webblock;
         List<PortBlock> portblock;
         //getter and setters
    }
    
    public class PortBlock{
         Integer port;
         String value;
         //getter and setters
    }
    
  2. 映射到域类

    ObjectMapper objectMapper = new ObjectMapper();
    objectMapper.readValue(YOUR_JSON_STRING, DomainName.class)