elasticsearch,Java,Json,elasticsearch" /> elasticsearch,Java,Json,elasticsearch" />

Java 如何将json(来自elasticsearch)解析到数组中而不使用元信息

Java 如何将json(来自elasticsearch)解析到数组中而不使用元信息,java,json,elasticsearch,Java,Json,elasticsearch,我有一个elasticsearch json对象要在我的应用程序中使用。我不想使用ElasticSearchAPI。还需要去除元信息,请您告知此答案假设您正在使用软件包,并且命中数组只有一个元素(否则您需要循环命中): 此答案假设您正在使用软件包,并且hits数组只有一个元素(否则需要循环hitsArr): 此答案假设您正在使用软件包,并且hits数组只有一个元素(否则需要循环hitsArr): 此答案假设您正在使用软件包,并且hits数组只有一个元素(否则需要循环hitsArr): 上面的JS

我有一个elasticsearch json对象要在我的应用程序中使用。我不想使用ElasticSearchAPI。还需要去除元信息,请您告知

此答案假设您正在使用软件包,并且
命中
数组只有一个元素(否则您需要循环
命中
):


此答案假设您正在使用软件包,并且
hits
数组只有一个元素(否则需要循环
hitsArr
):


此答案假设您正在使用软件包,并且
hits
数组只有一个元素(否则需要循环
hitsArr
):


此答案假设您正在使用软件包,并且
hits
数组只有一个元素(否则需要循环
hitsArr
):


上面的JSON中的“元信息”是什么?另外,一旦“清理”了JSON,您想对它做什么?你使用哪种JSON API?我需要在我的android应用程序中使用它,首先我只需要将上面示例中的键值对存储起来,我只需要
“id”:“c201”,“name”:“Johnny Depp”,“phone”:{“mobile”:“+91 0000000000”,“home”:“000000”,}}
然后您只需要从初始JSON对象获取成员
“_source”
。我想您使用的是android捆绑的org.json?还有,如果有几个答案呢?在这种情况下,JSON是如何工作的?您可以考虑使用JSON PATH,上面的JSON中的“元信息”是什么?另外,一旦“清理”了JSON,您想对它做什么?你使用哪种JSON API?我需要在我的android应用程序中使用它,首先我只需要将上面示例中的键值对存储起来,我只需要
“id”:“c201”,“name”:“Johnny Depp”,“phone”:{“mobile”:“+91 0000000000”,“home”:“000000”,}}
然后您只需要从初始JSON对象获取成员
“_source”
。我想您使用的是android捆绑的org.json?还有,如果有几个答案呢?在这种情况下,JSON是如何工作的?您可以考虑使用JSON PATH,上面的JSON中的“元信息”是什么?另外,一旦“清理”了JSON,您想对它做什么?你使用哪种JSON API?我需要在我的android应用程序中使用它,首先我只需要将上面示例中的键值对存储起来,我只需要
“id”:“c201”,“name”:“Johnny Depp”,“phone”:{“mobile”:“+91 0000000000”,“home”:“000000”,}}
然后您只需要从初始JSON对象获取成员
“_source”
。我想您使用的是android捆绑的org.json?还有,如果有几个答案呢?在这种情况下,JSON是如何工作的?您可以考虑使用JSON PATH,上面的JSON中的“元信息”是什么?另外,一旦“清理”了JSON,您想对它做什么?你使用哪种JSON API?我需要在我的android应用程序中使用它,首先我只需要将上面示例中的键值对存储起来,我只需要
“id”:“c201”,“name”:“Johnny Depp”,“phone”:{“mobile”:“+91 0000000000”,“home”:“000000”,}}
然后您只需要从初始JSON对象获取成员
“_source”
。我想您使用的是android捆绑的org.json?还有,如果有几个答案呢?在这种情况下,JSON是如何工作的?可以考虑使用JSON路径
{
  "took": 3,
  "timed_out": false,
  "_shards": {
    "total": 5,
    "successful": 5,
    "failed": 0
  },
  "hits": {
    "total": 2,
    "max_score": 1.0,
    "hits": [
      {
        "_index": "contacts",
        "_type": "index",
        "_id": "2",
        "_score": 1.0,
        "_source": {
          "id": "c201",
          "name": "Johnny Depp",
          "phone": {
            "mobile": "+91 0000000000",
            "home": "00 000000"
          }
        }
      }
    ]
  }
}
JSONObject json = new JSONObject(jsonString);
JSONObject hitsObj = json.getJSONObject("hits");
JSONArray hitsArr = hitsObj.getJSONArray("hits");
JSONObject first = hitsArr.getJSONObject(0); // assumes 1 entry in hits array
JSONObject source = first.getJSONObject("_source");
JSONObject phone = source.getJSONObject("phone");

String id = source.getString("id");
String name = source.getString("name");
String mobile = phone.getString("mobile");
String home = phone.getString("home");

System.out.println(id + "\n" + name + "\n" + mobile + "\n" +home);