sAs59
sAs59

Reputation: 572

Elasticsearch searching Java API

I have got a working query for ElasticSearch, but I have problems to execute the same query with the Java API of ElasticSearch.

How can I express the query below with the Java API of ElasticSearch?

http://localhost:9200/mongoindex/files/_search?q=anyword&fields=file.file

Upvotes: 3

Views: 10557

Answers (2)

sAs59
sAs59

Reputation: 572

Thank you for your responses!

Think the following would be better)

SearchRequestBuilder searchRequestBuilder = client.prepareSearch()
            .setIndices("mongoindex")
            .setTypes("files")
            .setQuery(QueryBuilders.queryString("anyword"))
            .addField("file.file");

    SearchResponse response = searchRequestBuilder.execute().actionGet();

    System.out.println(response.toString());

Upvotes: 2

Jettro Coenradie
Jettro Coenradie

Reputation: 4733

this type of query uses a query_string query. The java code should look like this:

SearchRequestBuilder searchRequestBuilder = new SearchRequestBuilder(client);
searchRequestBuilder.setIndices("mongoindex");
searchRequestBuilder.setTypes("files");
QueryStringQueryBuilder queryStringQueryBuilder = new QueryStringQueryBuilder("anyword");
queryStringQueryBuilder.field("file.file");
searchRequestBuilder.setQuery(queryStringQueryBuilder);
SearchResponse response = searchRequestBuilder.execute().actionGet();

Upvotes: 8

Related Questions