json转换成list集合

最近在做的项目涉及到把json数据格式转换成list集合的需求,在网上看了一些文章,但是觉得比较凌乱,现在问题已经解决,特此写下此文章记录一下。

1.添加相关依赖

<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-annotations -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>2.6.2</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.6.2</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.codehaus.jackson/jackson-core-asl -->
        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-core-asl</artifactId>
            <version>1.9.13</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.6.2</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.codehaus.jackson/jackson-mapper-asl -->
        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>
            <version>1.9.13</version>
        </dependency>

2.我们处理的json格式是如下所示:

{
    "info": [
        {
            "topoName": "mtd_recommend_dev_netty_n002",
            "weight": 50
        },
        {
            "topoName": "mtd_recommend_dev_netty_n001",
            "weight": 100
        }
    ]
}

3.具体代码实现如下:

String result=HttpRequest.sendGet(zooUrl+"gettopo",param);
        System.out.println("result--"+result);

        JSONObject obj=JSONObject.parseObject(result);//获取jsonobject对象
        System.out.println("obj---"+obj);
        JSONArray arr=obj.getJSONArray("info");//获取的结果集合转换成数组
        System.out.println("arr---"+arr);
        List list1=new ArrayList();
        for(int i=0;i<arr.size();i++){
            Map map=new HashMap();
            Map  omap=(Map) arr.get(i);
            System.out.println("omap--"+omap);
            String value1=(String) omap.get("topoName");
            System.out.println("value1--"+value1);
            Integer value2=(Integer)omap.get("weight");
            System.out.println("value2--"+value2);
            map.put("weight",value1);
            map.put("count",value2);

            list1.add(map);
        }

result就是我取到的上述json值
这就是我的实现过程,可以最终得到list集合

可以在自己的代码中去debug调试,看看是怎么一步步处理json数据的

新手,对于json并不是很了解,只是需求实现了,如有错误,欢迎指正

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,983评论 25 708
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,859评论 18 139
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,198评论 4 61
  • 17年11月15日晚上我去家访,家有一枚初二男孩,妈妈反应儿子不想上学了,觉得做什么事都没有意思,很无聊,...
    赵福阅读 1,611评论 5 6
  • 每天起床,脑海里就规划着今天的生活和工作任务,然后指挥着自己不留余力的去完成。 ...
    小月哈哈阅读 340评论 0 0