2017-09-13 24 views
1

elasticsearch検索結果をJson Objectに変換したいと考えています。私は直接変換するための適切な方法を見つけることはできません。ElasticSearch SearchResponseオブジェクトをJsonObjectに変換する

SearchResponse response = client.prepareSearch(index).setExplain(true).execute().actionGet(); 

response->JSON Object. 

ElasticSearchレスポンスをJsonオブジェクトに変換する方法はありますか?

答えて

2

はJavaでは、あなたが直接JSONObjectにSearchResponseを変換することができます。 以下は便利なコードです。

SearchResponse SR = builder.setQuery(QB).addAggregation(AB).get(); 

JSONObject SRJSON = new JSONObject(SR.toString()); 
+1

良い点、それはよりクリーンです! – Val

+0

ありがとう! @Val –

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()); 
関連する問題