0
{
"random": {
   "5756cd7a-4662-4428-9b09-dbff3080450a": {
       "@class": "one",
       "id": "5756cd7a-4662-4428-9b09-dbff3080450a"
   },
   "857ef5ee-af98-4f24-89fe-29bdbebde882": {
       "@class": "two",
       "id": "857ef5ee-af98-4f24-89fe-29bdbebde882"
   }
 }
}

これは、タイプ JsonPath にある私の API「応答」です。

String random = response.getString("random");

この後、最初のランダム要素を抽出する方法について行き詰まっています。

4

2 に答える 2

0

json 応答が responseJsonString の文字列としてあると仮定すると、以下のコードで問題が解決する可能性があります。

    List<String> randomIDS = JsonPath.read(responseJsonString, "$.random..id");
    Collections.reverse(randomIDS);

    for (String randomID : randomIDS) {
        StringBuilder stringBuilder = new StringBuilder("$.random.");
        String randomClass = JsonPath.read(
                responseJsonString, 
                stringBuilder.append(randomID).append(".@class").toString());
        System.out.println(randomClass);
    }
于 2013-07-08T16:19:08.710 に答える