我如何读取json数组返回java中的webservice

问题描述 投票:-1回答:1

我从Web服务返回:

[{"id_professor":"1","nome":"Ana Paula","email":"[email protected]"},{"id_professor":"2","nome":"Beatriz de Souza","email":"[email protected]"},{"id_professor":"3","nome":"Carlos da Silva","email":"[email protected]"},{"id_professor":"4","nome":"Dion\u00edsio Mathias","email":"[email protected]"},{"id_professor":"5","nome":"Eduardo Paiva","email":"[email protected]"}]

我喜欢读这个jsonArray

我有这个代码:

  URL endWeb = new URL("http://editalmais.com.br/concurso/blank_json_professor_curso/");
            HttpURLConnection con =  (HttpURLConnection) endWeb.openConnection();

                con.setReadTimeout(10000);
                con.setConnectTimeout(15000);
               con.setDoInput(true);
                con.setDoOutput(false);
                con.setRequestMethod("GET");


            int respCon = con.getResponseCode();

            if ( respCon < HttpURLConnection.HTTP_BAD_REQUEST){

                Log.i("conexao", "Realizada com sucesso");
                strings =  new ArrayList<String>();
                InputStream is = con.getInputStream();
                BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));

                StringBuilder sb = new StringBuilder();
                String line = null;

                while ( ( line = reader.readLine()) != null){

                    sb.append(line);

                }
                is.close();

直到这里没关系...但我没有得到价值观。

java arrays
1个回答
1
投票

从api获得响应并解析json之后如下所示,只需将响应作为字符串传递给下面的方法:

 public ArrayList<Example> getList(String json){
    ArrayList<Example> arrayList = new ArrayList<>();
    try {
        JSONArray jsonArray = new JSONArray(json);
        for (int count = 0; count<jsonArray.length(); count++){
            Example example = new Example();
            JSONObject jsonObject = jsonArray.getJSONObject(count);
            example.setIdProfessor(jsonObject.getString("id_professor"));
            example.setEmail(jsonObject.getString("email"));
            example.setNome(jsonObject.getString("nome"));
            arrayList.add(example);
        }
    } catch (JSONException e) {
        e.printStackTrace();
    }
    return arrayList;
}

example.Java

    public class Example {

private String idProfessor;

private String nome;

private String email;

public String getIdProfessor() {
return idProfessor;
}

public void setIdProfessor(String idProfessor) {
this.idProfessor = idProfessor;
}

public String getNome() {
return nome;
}

public void setNome(String nome) {
this.nome = nome;
}

public String getEmail() {
return email;
}

public void setEmail(String email) {
this.email = email;
}

}
© www.soinside.com 2019 - 2024. All rights reserved.