2017-04-21 15 views
1

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"}, 

IS JSON配列内のすべてのコンテンツをフィールドとして返します。受け取った支援に感謝します。コードの量によって判断

答えて

0

Errrは、あなたがそうのような配列を反復処理したい提示:

for(int i=0; i < response.length; i++) 
{ 
    System.out.println(response[i]) // prints the toString of a Data object. 
} 
1

それは主にここで、JSONレスポンスであるかに依存します例です。

これはあなたが得ることの応答の場合:

{"result": [ {"key":"value1"}, {"key":"value2"} ] } 

を次のコードは、値2をVALUE1を出力します。

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")); 
} 
+0

jsonobjectはクラスではありません – parker

+0

@parker解析しようとしているJSON応答を投稿できますか?上記の私のコードスニペットのJSONObject jsonObjリファレンスは、JSONレスポンスから作成されたJSONオブジェクトです。受け取ったJSONレスポンスが解析する方法(キーと値のペアを取得する方法)を明確にします。 – hubpixel

+0

あなたはそこにいますか? – parker

関連する問題