簡體   English   中英

需要從 Java 中的 JSON 響應中提取特定值

[英]need to extract a particular value from the JSON response in java

我有一個代碼,我在其中以數組格式獲得 Json 響應

{  "data": {
"findAllUsers": {
  "pendingUsers": [
    {
      "userId": "123",
      "firstName": "FirstNamemz8",
      "lastName": "LastName0Hz",
      "status": "Pending"
    },
    {
      "userId": "456",
      "firstName": "FirstNameEgl",
      "lastName": "LastNameVCC",
      "status": "Pending"
    }
  ]
}  }}

我需要以列表格式獲取用戶 ID 列表。 下面是我使用的代碼,它不起作用。 請用工作代碼幫助我解決這個問題。

package com.deedsing;

import com.deedsing.bean.SnowIncident;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;

public class Test {



public static void main(String[] args) {

    String jString="{  \"data\": {\r\n" + 
            "\"findAllUsers\": {\r\n" + 
            "  \"pendingUsers\": [\r\n" + 
            "    {\r\n" + 
            "      \"userId\": \"123\",\r\n" + 
            "      \"firstName\": \"FirstNamemz8\",\r\n" + 
            "      \"lastName\": \"LastName0Hz\",\r\n" + 
            "      \"status\": \"Pending\"\r\n" + 
            "    },\r\n" + 
            "    {\r\n" + 
            "      \"userId\": \"456\",\r\n" + 
            "      \"firstName\": \"FirstNameEgl\",\r\n" + 
            "      \"lastName\": \"LastNameVCC\",\r\n" + 
            "      \"status\": \"Pending\"\r\n" + 
            "    }\r\n" + 
            "  ]\r\n" + 
            "}  }}";


    Gson json = new GsonBuilder().create();

    JsonElement elem = new JsonParser().parse(jString);
 JsonObject obj = elem.getAsJsonObject();
 JsonArray jarray = obj.get("data").getAsJsonObject().get("findAllUsers").getAsJsonObject().get("pendingUsers").getAsJsonArray();


     for(int i = 0; i < jarray.size(); i++)
     {

         JsonElement elem2 = jarray.get(i);
         JsonObject obj2 = elem2.getAsJsonObject();
         System.out.println("UserID -->" + obj2.get("userId").getAsString());

     }
}

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM