1. 程式人生 > >基於阿里fastJson解析json字串

基於阿里fastJson解析json字串

1、json示例

{
    "pageSize":20,                 // 每頁顯示多少
    "toPage":1,                  // 當前頁碼
    "totalCount":1,                  // 一共多少條
    "totalPages":1,                 // 一共多少頁
    "success":true,
    "errorCode":null,
    "other":null,
    "msgCode":null,
    "msgInfo":null,
    "messages":[],
    "result":[{
        "id":12362,                //關鍵字ID
        "keyword":"杭州 交通事故",         //關鍵字內容
        "topicId":6544,             //關鍵字專題ID
        "createdAt":"2016-04-28T03:09:12.000Z",
        "updatedAt":"2016-04-28T03:09:12.000Z",
        "spiderTopics":[{          
            "id":2252,        //站點組ID,用於輿情搜尋時,指定的spiderTopicId
            "name":"新聞"            //站點組名稱
        },{
            "id":2253,
            "name":"微博"
        }]
    }]
}

2、Java程式碼
        JSONObject json = JSONObject.parseObject("待解析的json字串");
        System.out.println(JSONObject.toJSONString(json, true));
        JSONArray array = json.getJSONArray("result");
        List<Keyword> keywords = new ArrayList<>();
        for (int i = 0; i < array.size(); i++) {
            JSONObject jo = array.getJSONObject(i);
            assertEquals(topic.getId(), jo.getInteger("topicId"));
            keywords.add(new Keyword(topic, jo.getInteger("id"), jo.getString("keyword"), null,
                    jo.getJSONArray("spiderTopics"), jo.getString("updatedAt"), jo.getString("createdAt")));
        }