我想将elasticsearch搜索结果转换为Json Object。我没有找到任何直接转换的正确方法。
SearchResponse response = client.prepareSearch(index).setExplain(true).execute().actionGet();
response->JSON Object.
有没有办法将ElasticSearch响应转换为Json对象?
答案 0 :(得分:2)
在Java中,您可以直接将SearchResponse转换为JSONObject。 下面是方便的代码。
SearchResponse SR = builder.setQuery(QB).addAggregation(AB).get();
JSONObject SRJSON = new JSONObject(SR.toString());
答案 1 :(得分:0)
您需要使用SearchResponse.toXContent()
方法,如下所示:
SearchResponse response = client.prepareSearch(index).setExplain(true).execute().actionGet();
XContentBuilder builder = XContentFactory.jsonBuilder();
response.toXContent(builder, ToXContent.EMPTY_PARAMS);
JSONObject json = new JSONObject(builder.string());