Jackson-json解析一个嵌套的json字符串
2018-03-06 23:28
483 查看
最近想尝试一下java的爬虫的编写,于是不可避免的遇到了要处理json数据的问题,于是乎用到了Jackson-json这个jar包
关于这个jar包
先在工程中导入这个jar包,然后创建一个ObjectMapper对象
ObjectMapper objectmapper=new ObjectMapper;
然后读入我的json字符串(str),得到JsonNode对象
JsonNode node=mapper.readTree(str);
之后就是处理这个JsonNode对象了
但是我的json字符串长这样
把节点展开
但其实我只要shops属性下的json,所以这里相当于json对象的嵌套
所以我读进来的这个node其实就只有一个Json,我得一步一步往下取,当我取到shops时就会出现40个Json
JsonNode lastnode=node.get("result").get("1584548").get("result").get(0).get("shops");
要注意的一点是
//必须确保node是一个json数组,不能像顶层那样只是一个json,不然直接用索引取会得到null,而且下标从零开始
取到shops时就简单了,贴上代码JsonNode newnode=null;
List<Shop> shoplist=new ArrayList<>();
for(int i=0;i<lastnode.size();i++) {
newnode=lastnode.get(i);
Shop shop=new Shop();
shop.setWord(newnode.get("item_title").asText());
shop.setImg(newnode.get("item_pic").asText());
shop.setPrice(newnode.get("item_current_price").asLong());
shoplist.add(shop);
}
for(int j=0;j<shoplist.size();j++) {
System.out.println(shoplist.get(j));
}最后的结果
关于这个jar包
先在工程中导入这个jar包,然后创建一个ObjectMapper对象
ObjectMapper objectmapper=new ObjectMapper;
然后读入我的json字符串(str),得到JsonNode对象
JsonNode node=mapper.readTree(str);
之后就是处理这个JsonNode对象了
但是我的json字符串长这样
把节点展开
但其实我只要shops属性下的json,所以这里相当于json对象的嵌套
所以我读进来的这个node其实就只有一个Json,我得一步一步往下取,当我取到shops时就会出现40个Json
JsonNode lastnode=node.get("result").get("1584548").get("result").get(0).get("shops");
要注意的一点是
//必须确保node是一个json数组,不能像顶层那样只是一个json,不然直接用索引取会得到null,而且下标从零开始
取到shops时就简单了,贴上代码JsonNode newnode=null;
List<Shop> shoplist=new ArrayList<>();
for(int i=0;i<lastnode.size();i++) {
newnode=lastnode.get(i);
Shop shop=new Shop();
shop.setWord(newnode.get("item_title").asText());
shop.setImg(newnode.get("item_pic").asText());
shop.setPrice(newnode.get("item_current_price").asLong());
shoplist.add(shop);
}
for(int j=0;j<shoplist.size();j++) {
System.out.println(shoplist.get(j));
}最后的结果
相关文章推荐
- JSON 解析嵌套json字符串,一个json字符串中嵌套另一个json字符串 (附解析代码)
- c#解析一个嵌套json的例子
- 解析嵌套json字符串,一个json字符串中嵌套另一个json字符串
- 使用GSON解析一个复杂的json
- 一个关于Json数据List和对象嵌套反序列化的工具类,java(20151130)
- 复杂json解析(json里面嵌套json)
- Java下利用Jackson进行JSON解析和序列化
- MVC-Ajax-jquery分页 (服务器返回一个json数据,客户端解析)
- Spring MVC4设置使用fastjson作为json解析器,替代jackson
- Json解析工具Jackson(使用注解)
- Newtonsoft.Json解析json字符串和写json字符串
- Java:JSON解析利器JackSon
- 认识Json本质 & 一个较复杂Json串的解析实例
- 比Gson解析速度快10倍!——Json解析神器Jackson使用介绍
- 我的Android进阶之旅------>解决Jackson、Gson解析Json数据时,Json数据中的Key为Java关键字时解析为null的问题
- FastJson、Gson、Jackson json解析性能比较
- Java下利用Jackson进行JSON解析和序列化
- Java下利用Jackson进行JSON解析和序列化
- eval解析JSON字符串的一个小问题
- 使用Jackson解析Json示例