Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
json在java中按键选择多个值_Java_Json - Fatal编程技术网

json在java中按键选择多个值

json在java中按键选择多个值,java,json,Java,Json,我有一个json,如下所示 [{ "D_Table_Name": "BUILDING", "S_Table_Name": "View1", "S_Data_Field_Name": "USECD", "D_Field_Name": "Description", "MappingCode": "FIELD" }, { "D_Table_Name": "BUILDING", "S_Table_Name": "View1", "S

我有一个json,如下所示

[{
    "D_Table_Name": "BUILDING",
    "S_Table_Name": "View1",
    "S_Data_Field_Name": "USECD",
    "D_Field_Name": "Description",
    "MappingCode": "FIELD"
  },
  {
    "D_Table_Name": "BUILDING",
    "S_Table_Name": "View1",
    "S_Data_Field_Name": "USECD",
    "D_Field_Name": "StndCode",
    "MappingCode": "FIELD"
  },
  {
    "D_Table_Name": "asdasd",
    "S_Table_Name": "View1",
    "S_Data_Field_Name": "qwew",
    "D_Field_Name": "ijhbgr4",
    "MappingCode": "FIELD"
  },
  {
    "D_Table_Name": "qwsdcv",
    "S_Table_Name": "View1",
    "S_Data_Field_Name": "kjmnbv",
    "D_Field_Name": "dszfs",
    "MappingCode": "FIELD"
  }]

如何获取key
S\u Table\u Name的所有值假定您使用任何特定的库将JSON字符串转换为对象,假设我使用库

List sTableNameValues=new ArrayList();
List input=new GSON.fromJSON(inputJSONString);
for(Map.Entry:input.entrySet()){
if(entry.getKey().equals(“S_Table_Name”)){
sTableNameValues.add(entry.getValue());
}
}
//现在,所有S_Table_Name值都在列表中。

假设您正在使用任何特定的库将JSON字符串转换为对象,假设我正在使用库

List sTableNameValues=new ArrayList();
List input=new GSON.fromJSON(inputJSONString);
for(Map.Entry:input.entrySet()){
if(entry.getKey().equals(“S_Table_Name”)){
sTableNameValues.add(entry.getValue());
}
}
//现在,所有S_Table_Name值都在列表中。
类似的内容应该会有所帮助。在您的情况下,表达式应类似于:

$[*].S_Table_Name
像这样的东西应该会有帮助。在您的情况下,表达式应类似于:

$[*].S_Table_Name
使用杰克逊图书馆:

ObjectMapper mapper = new ObjectMapper();
JsonNode array = mapper.readValue(yourJson, JsonNode.class);
获取值:

for (int i = 0; i < array.size(); i++) {
  String reportKey = array.get(i).get("S_Table_Name").textValue();
  System.out.println(reportKey);
}
for(int i=0;i
使用jackson库:

ObjectMapper mapper = new ObjectMapper();
JsonNode array = mapper.readValue(yourJson, JsonNode.class);
获取值:

for (int i = 0; i < array.size(); i++) {
  String reportKey = array.get(i).get("S_Table_Name").textValue();
  System.out.println(reportKey);
}
for(int i=0;i
您还可以使用
org.json.JSONObject
库。请参阅以下代码以了解此信息:

String response = "[{\"D_Table_Name\": \"BUILDING\",\"S_Table_Name\": \"View1\",\"S_Data_Field_Name\": \"USECD\",\"D_Field_Name\": \"Description\",\"MappingCode\": \"FIELD\"},{\"D_Table_Name\": \"BUILDING\",\"S_Table_Name\": \"View1\",\"S_Data_Field_Name\": \"USECD\",\"D_Field_Name\": \"StndCode\",\"MappingCode\": \"FIELD\"},{\"D_Table_Name\": \"asdasd\",\t\t\"S_Table_Name\": \"View1\",\"S_Data_Field_Name\": \"qwew\",\"D_Field_Name\": \"ijhbgr4\",\"MappingCode\": \"FIELD\"},{\"D_Table_Name\": \"qwsdcv\",\"S_Table_Name\": \"View1\",\t\"S_Data_Field_Name\": \"kjmnbv\",\"D_Field_Name\": \"dszfs\",\"MappingCode\": \"FIELD\"}]";

    JSONArray responseArray = new JSONArray(response);

    if (responseArray.length() > 0) {
        for (int i = 0; i < responseArray.length(); i++) {
            JSONObject responseObject = responseArray.getJSONObject(i);
            if (responseObject.has("S_Table_Name")) {
                String S_Table_Name = responseObject.getString("S_Table_Name");
                System.out.println(S_Table_Name);
            }
        }
    }
“建筑工程”是一个表面上的表面上的表面上的表面上的表面上的表面上的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的名称的表面的表面的表面的名称的表面的表面的表面的表面的名称的名称的表面的名称的名称的名称的名称的表面的名称的表面的名称的表面的表面的名称的表面的表面的名称的名称的名称的字段\“},{\”D_表\u名称\“视图1\”,“S-U数据场”数据场域名称“:“qwew\”,“D-U数据场域域名称”以及“S-U数据场域域名称”中,“D-U场域名称”中,“D-D数据场域名称”中,“D-D数据场域名称”中的一个数据场名称“,“D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D\“}]”; JSONArray responseArray=新JSONArray(响应); if(responseArray.length()>0){ 对于(int i=0;i
您也可以使用
org.json.JSONObject
库。请参阅以下代码:

String response = "[{\"D_Table_Name\": \"BUILDING\",\"S_Table_Name\": \"View1\",\"S_Data_Field_Name\": \"USECD\",\"D_Field_Name\": \"Description\",\"MappingCode\": \"FIELD\"},{\"D_Table_Name\": \"BUILDING\",\"S_Table_Name\": \"View1\",\"S_Data_Field_Name\": \"USECD\",\"D_Field_Name\": \"StndCode\",\"MappingCode\": \"FIELD\"},{\"D_Table_Name\": \"asdasd\",\t\t\"S_Table_Name\": \"View1\",\"S_Data_Field_Name\": \"qwew\",\"D_Field_Name\": \"ijhbgr4\",\"MappingCode\": \"FIELD\"},{\"D_Table_Name\": \"qwsdcv\",\"S_Table_Name\": \"View1\",\t\"S_Data_Field_Name\": \"kjmnbv\",\"D_Field_Name\": \"dszfs\",\"MappingCode\": \"FIELD\"}]";

    JSONArray responseArray = new JSONArray(response);

    if (responseArray.length() > 0) {
        for (int i = 0; i < responseArray.length(); i++) {
            JSONObject responseObject = responseArray.getJSONObject(i);
            if (responseObject.has("S_Table_Name")) {
                String S_Table_Name = responseObject.getString("S_Table_Name");
                System.out.println(S_Table_Name);
            }
        }
    }
“建筑工程”是一个表面上的表面上的表面上的表面上的表面上的表面上的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的表面的名称的表面的表面的表面的名称的表面的表面的表面的表面的名称的名称的表面的名称的名称的名称的名称的表面的名称的表面的名称的表面的表面的名称的表面的表面的名称的名称的名称的字段\“},{\“D_表\u名称\”“1月1号视图”、“1月1号视图”和“S-U-U数据场域域数据场域数据场域数据场名称\:“qwew\”、“D-U场域数据场名称”和“D-U场域数据场名称\”,\t-t-t-t-t-t-t-t-t-t-t-S-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D“}]”; JSONArray responseArray=新JSONArray(响应); if(responseArray.length()>0){ 对于(int i=0;i
到目前为止你尝试了什么?我会使用某种循环,可能是一个if块或两个。-严肃点:这个问题很难回答,请详细说明。可能与你到目前为止尝试的内容重复?我会使用某种循环,可能是一个if块或两个。-严肃点:这个问题很难回答,请详细说明。可能与