显示从json响应中检索到的所有内容
问题描述:
我有使用JSON响应的端点。我可以调用JSON端点中调用数组长度属性的长度数。这是我使用的消耗JSON响应的代码片段:显示从json响应中检索到的所有内容
restTemplate.getMessageConverters().add(new StringHttpMessageConverter());
Data[] response = restTemplate.getForObject("url", Data[].class);
Integer response2 = response.length;
for(int i=0; i < response.length; i++)
{
//retrieve all the contents of the json response here
}
EDITTED:
正是在这种格式
[{"id":1,"state_data":"hi","state_data":"hi",
"state_data":"hi","state_data":"hi","state_data":"hi",
"state_data":"hi","state_data":"hi","state_data":"hi",
"state_data":"hi","state_data":"hi","state_data":"hi",
"state_data":"hi","state_data":"hi","state_data":"hi",
"state_data":"hi","state_data":"hi","state_data":"hi",
"state_data":"hi","state_data":"hi","state_data":"hi",
"state_data":"hi","state_data":"hi","state_data":"hi",
"state_data":"hi","state_data":"hi","state_data":"hi",
"state_data":"hi","state_data":"hi","state_data":"hi"},
我的挑战是,我怎么能检索JSON数组中的所有内容作为字段。感谢收到的援助。
答
Errr,通过代码的数量来看呈现你想遍历数组,像这样:
for(int i=0; i < response.length; i++)
{
System.out.println(response[i]) // prints the toString of a Data object.
}
答
它在很大程度上取决于什么是在JSON的响应,下面是一个例子。
如果这是你得到的回应:
{"result": [ {"key":"value1"}, {"key":"value2"} ] }
下面的代码将打印出值1,值。
JSONObject jsonObj = new JSONObject(response.getBody());
JSONArray result = jsonObj.getJSONArray("result");
for(int n = 0; n < result.length(); n++) {
JSONObject item = result.getJSONObject(n);
System.out.println(item.getString("key"));
}
jsonobject不是类 – parker
@parker你可以发布你试图解析的JSON响应吗?上面代码片段中的JSONObject jsonObj引用是从JSON响应中创建的JSON对象,它知道您收到的JSON响应将阐明如何解析它(以检索键值对)。 – hubpixel
你在那里...... – parker