把复杂json解析成javabean思路:思路:

时间:2022-04-26
本文章向大家介绍把复杂json解析成javabean思路:思路:,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

工具:fastjson1.2.9 用其他工具也行,比如json-lib、gson 用法都差不多 先来一段json


{
    "page": {
        "pagenow": "1",
        "pagesize": "20"
    },
    "file": {
        "name": "jpg"
    },
    "catalogs": [
        {
            "id": "1"
        },
        {
            "id": "2"
        }
    ]
}

这个json里面有对象也有数组 JSON—javabean 思路: 先得到JSONObject 然后用getString(key)拿到要解析的JSON片段 然后用JSON.parseObject(要解析的JSON片段,class)得到javabean String json="{"page":{"pagenow":"1","pagesize":"20"},"file":{"name":"jpg"},"catalogs":[{"id":"1"},{"id":"2"}]}"; JSONObject obj=JSON.parseObject(json); Page page=JSON.parseObject(obj.getString("page"),Page.class);

JSON—List<bean> 思路: 先得到JSONObject 然后用getString(key)拿到要解析的JSON片段 然后用JSON.parseArray(要解析的JSON片段,class)得到List<javabean> String json="{"page":{"pagenow":"1","pagesize":"20"},"file":{"name":"jpg"},"catalogs":[{"id":"1"},{"id":"2"}]}"; JSONObject obj=JSON.parseObject(json); List catalogList=JSON.parseArray(obj.getString("catalogs"), Catalog.class);//得到List Catalog[] catalogArr=catalogList==null?null:catalogList.toArray(new Catalog[0]);//得到Catalog[] 注意 1.javabean必须有空参数的构造器 2.javabean的属性要有setter方法