如何使用Java中的JSON创建Elasticsearch查询?

时间:2015-03-06 20:05:59

标签: java json elasticsearch

我正在尝试使用 Java Elasticsearch 进行Elasticsearch搜索。弹性搜索为Java提供API,这很酷。

问题是,我希望在Java中创建一个方法,该方法接收一个字符串(正确地说,一个包含搜索信息的JSON),它反映了对Elasticsearch的这个HTTP调用

curl -X GET 'http://localhost:9200/geocon/_search?q=first:"Sonya"'

但我希望这种方法尽可能广泛。

所以问题是:是否可以使用Java API将1:1 HTTP请求解析并转换为Elasticsearch?可能只是将JSON字符串作为参数提供给Elasticsearch对象?

2 个答案:

答案 0 :(得分:2)

检查一下。也许这篇文章可以帮到你:

How to construct QueryBuilder from JSON DSL when using Java API in ElasticSearch?

答案 1 :(得分:1)

基本上你需要做这样的事情:

String query = whatever_query...
SearchResponse response = esClient.prepareSearch(Configuration.PRIMARY_INDEX_NAME)
                    .setQuery(query)
                    .execute()
                    .actionGet();