Android Studio 获取网络JSON数据并处理

来源:互联网 发布:法国小哥知乎 编辑:程序博客网 时间:2024/05/24 20:07

1、需要的网络JSON数据
这里写图片描述

2、数据实现类

package chenglong.activitytest.pengintohospital.entity;import org.json.JSONException;import org.json.JSONObject;/** * * 科室 * Created by LICHENGLONG on 2017-10-02. */public class BasSection {    public Integer id;//科室id    public String sectionName;//科室名称    public Integer getId() {        return id;    }    public void setId(Integer id) {        this.id = id;    }    public String getSectionName() {        return sectionName;    }    public void setSectionName(String sectionName) {        this.sectionName = sectionName;    }    public BasSection(Integer id, String sectionName){        this.id = id;        this.sectionName = sectionName;    }    public static BasSection sectionData(JSONObject json){        try {            return new BasSection(                       json.getInt("id"),                       json.getString("sectionName");        } catch (JSONException e) {            e.printStackTrace();        }        return null;    }}

3、创建List集合接收数据

List<BasSection> listBasSection = new ArrayList<>();

4、获取JSON数据

/** * 获取JSON科室数据 */public void findSectionData(){    AsyncHttpClient client = new AsyncHttpClient();    //你的JSON数据链接地址    client.get(AbAppConfig.DATA_URL + "appGVConsultation/findSectionData", null, new AsyncHttpResponseHandler() {        @Override        public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {            try {                JSONObject object =  new JSONObject(new String(responseBody));//获取json数据                JSONArray jsonArray = object.getJSONArray("obj");//获取数据集名称为obj的数据                Log.d("jsonArray数据输出:", String.valueOf(jsonArray));                for (int i = 0; i < jsonArray.length();i++) {                    BasSection novels = BasSection.sectionData(jsonArray.getJSONObject(i));//把数据存在novels集合中                    if (novels != null){                        listBasSection.add(novels);                    }                }            } catch (JSONException e) {                Toast.makeText(GV_Consultation.this, "数据请求失败,请稍后重试", Toast.LENGTH_SHORT).show();            }        }        @Override        public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {            //请求失败的回调处理            Toast.makeText(GV_Consultation.this, "请链接网络,稍后重试", Toast.LENGTH_SHORT).show();        }    });}
原创粉丝点击