【问题标题】:Elasticsearch searching Java APIElasticsearch 搜索 Java API
【发布时间】:2014-04-30 03:38:45
【问题描述】:

我有一个 ElasticSearch 的有效查询,但我无法使用 ElasticSearch 的 Java API 执行相同的查询。

如何用 ElasticSearch 的 Java API 表达下面的查询?

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

【问题讨论】:

  • 你使用哪个版本的ES客户端,哪个版本的ES Java API?

标签: java search elasticsearch


【解决方案1】:

感谢您的回复!

认为以下会更好)

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());

【讨论】:

    【解决方案2】:

    这种类型的查询使用 query_string 查询。 Java 代码应如下所示:

    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();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-14
      • 2018-10-05
      • 1970-01-01
      • 1970-01-01
      • 2012-12-27
      • 2021-12-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多