Gson解析实例

网络请求返回数据:

{
"advertisement1": [
{
"ad_id": 0,
"id": 372941045176576,
"url": "http://121.40.157.202:8083/sys/index.html",
"picture": "20170110035103.jpg",
"name": "春节礼品",
"commodity_id": 0
},
{
"ad_id": 0,
"id": 372941373953792,
"url": "http://121.40.157.202:8083/tjdh/publicity.html",
"picture": "20161201101253.jpg",
"name": "沉香+有车一族=完美CP组合",
"commodity_id": 379051241803776
},
{
"ad_id": 0,
"id": 372941374238208,
"url": "http://121.40.157.202:8083/sys/index2.html",
"picture": "20161201105514.jpg",
"name": "相遇",
"commodity_id": 0
}
],
"advertisement2": [],
"advertisement3": [],
"ResultMessage": "广告获取成功",
"advertisement6": [],
"ResultCode": 100,
"advertisement8": []
}

构造实体类:

public class Advertisement {
    private int ResultCode;
    private String ResultMessage;
    private List<advertisement1> advertisement1;
    private List<advertisement2> advertisement2;
    private List<advertisement3> advertisement3;
    private List<advertisement6> advertisement6;
    private List<advertisement8> advertisement8;

    public List<Advertisement.advertisement8> getAdvertisement8() {
        return advertisement8;
    }

    public void setAdvertisement8(List<Advertisement.advertisement8> advertisement8) {
        this.advertisement8 = advertisement8;
    }

    public String getResultMessage() {
        return ResultMessage;
    }

    public void setResultMessage(String resultMessage) {
        ResultMessage = resultMessage;
    }

    public List<Advertisement.advertisement1> getadvertisement1() {
        return advertisement1;
    }

    public void setadvertisement1(List<Advertisement.advertisement1> advertisement1) {
        this.advertisement1 = advertisement1;
    }

    public List<Advertisement.advertisement2> getAdvertisement2() {
        return advertisement2;
    }

    public void setAdvertisement2(List<Advertisement.advertisement2> advertisement2) {
        this.advertisement2 = advertisement2;
    }

    public List<Advertisement.advertisement3> getAdvertisement3() {
        return advertisement3;
    }

    public void setAdvertisement3(List<Advertisement.advertisement3> advertisement3) {
        this.advertisement3 = advertisement3;
    }

    public List<Advertisement.advertisement6> getAdvertisement6() {
        return advertisement6;
    }

    public void setAdvertisement6(List<Advertisement.advertisement6> advertisement6) {
        this.advertisement6 = advertisement6;
    }

    public int getResultCode() {
        return ResultCode;
    }

    public void setResultCode(int resultCode) {
        ResultCode = resultCode;
    }

    @Override
    public String toString() {
        return "Advertisement{" +
                "ResultCode=" + ResultCode +
                ", ResultMessage='" + ResultMessage + '\'' +
                ", advertisement1=" + advertisement1 +
                ", advertisement2=" + advertisement2 +
                ", advertisement3=" + advertisement3 +
                ", advertisement6=" + advertisement6 +
                ", advertisement8=" + advertisement8 +
                '}';
    }

    public class advertisement1 {
        private String ad_id;
        private String id;
        private String url;
        private String picture;
        private String name;
        private String commodity_id;

        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
        }

        public String getAd_id() {
            return ad_id;
        }

        public void setAd_id(String ad_id) {
            this.ad_id = ad_id;
        }

        public String getCommodity_id() {
            return commodity_id;
        }

        public void setCommodity_id(String commodity_id) {
            this.commodity_id = commodity_id;
        }

        public String getPicture() {
            return picture;
        }

        public void setPicture(String picture) {
            this.picture = picture;
        }

        public String getUrl() {
            return url;
        }

        public void setUrl(String url) {
            this.url = url;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        @Override
        public String toString() {
            return "Advertisement{" +
                    "ad_id='" + ad_id + '\'' +
                    ", id='" + id + '\'' +
                    ", url='" + url + '\'' +
                    ", picture='" + picture + '\'' +
                    ", name='" + name + '\'' +
                    ", commodity_id='" + commodity_id + '\'' +
                    '}';
        }
    }
        public class advertisement2{

    }
        public class advertisement3{

        }
        public class advertisement6{

        }
        public class advertisement8{

        }
}
使用OkHttpClient 请求网络数据,gson解析

private void getImg() {
        mOkHttpClient = new OkHttpClient();
        RequestBody formBody = new FormBody.Builder().build();
        Request request = new Request.Builder()
                .url(url)
                .post(formBody)
                .build();
        Call call = mOkHttpClient.newCall(request);
        call.enqueue(new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {
                Looper.prepare();
                Toast.makeText(context, "网络连接失败", Toast.LENGTH_SHORT).show();
                Looper.loop();
            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                //拿到Json字符串
                String str = response.body().string();
                //GSON直接解析成对象
                Advertisement advertisement = new Gson().fromJson(str,Advertisement.class);
                int resultCode=advertisement.getResultCode();
                if (resultCode==100){
                    //对象中拿到集合
                    List<Advertisement.advertisement1> advertisement1List = advertisement.getadvertisement1();                                          
                }
            }
        });
    }



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嘟嘟嘟~~~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值