Android多级JsonObject和JsonArray与Model类一起解析

时间:2018-10-16 07:51:05

标签: android json parsing gson

{
"Query":"query",
"KMAQuery":"query",
"TotalCount":3,
"Data":[{"CollName":"kmdb_new",
         "TotalCount":3,
         "Count":3,
         "Result":[{"title":"sampletitle",
                    "director":[{"directorNm":"name1","directorId":"00004544"}],
                    "nation":"nation1",
                    "company":"company1",
                    "genre":"genre1",
                    "kmdbUrl":"http://www.kmdb.or.kr/vod/vod_basic.asp?nation=K&p_dataid=01040",
                    "rating":[{"ratingMain":"Y","ratingDate":"19640717","ratingNo":"","ratingGrade":"","releaseDate":"","runtime":""}]]}

这是我通过OKHttp解析得到的Json数据。

实际上有很多相同的结果2〜3。

我想解析键名称“ title”,“ directorNm”,“ nation”,“ company”,“ ratingGrade”并设置Model类。

如何使用Gson将多个Json对象和数组解析为Model类?

我最终要在模型类中使用recyclerview。

如果您告诉我如何解析“ title”和“ directorNm”,我可以休息一下。

作为参考,我正在使用AsyncTask,OKHttp,Gson等。

如果您不理解我的问题或需要代码,请发表评论!

我需要您的大力帮助。

1 个答案:

答案 0 :(得分:0)

我在这里分享来自Model(Pojo类)的代码设置响应

public void getResponse(JSONObject jsonObject){
    try {
        JSONObject responseJson = new JSONObject(jsonObject.toString());

        JSONArray jsonArray = responseJson.getJSONArray("heroes");

        for (int i = 0; i < jsonArray.length(); i++){

                //getting the json object of the particular index inside the array
                JSONObject jsonObject = jsonArray.getJSONObject(i);

                YourPojoClass pojoObject = new YourPojoClass();

                pojoObject.setName(jsonObject.getString("name"));
                pojoObject.setImageurl(jsonObject.getString("imageurl"));

        }

    } catch (JSONException e) {
        e.printStackTrace();
    }
}