Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 获取所有记录,包括特定字段_Java_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Elasticsearch 7 - Fatal编程技术网 elasticsearch,elasticsearch-7,Java,elasticsearch,Elasticsearch 7" /> elasticsearch,elasticsearch-7,Java,elasticsearch,Elasticsearch 7" />

Java 获取所有记录,包括特定字段

Java 获取所有记录,包括特定字段,java,elasticsearch,elasticsearch-7,Java,elasticsearch,Elasticsearch 7,我正在使用ElasticSearch 7.3。我只想使用JavaAPI从索引中获取所有文档的两条记录。我正在使用以下代码,但它返回空对象 RestHighLevelClient client; SearchSourceBuilder sourceBuilder = new SearchSourceBuilder(); sourceBuilder.fetchSource("recipe_ID,recipe_url", null);

我正在使用ElasticSearch 7.3。我只想使用JavaAPI从索引中获取所有文档的两条记录。我正在使用以下代码,但它返回空对象

        RestHighLevelClient client;

        SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
        sourceBuilder.fetchSource("recipe_ID,recipe_url", null);
        sourceBuilder.from(0);
        SearchRequest searchRequest = new SearchRequest("recipes");
        searchRequest.source(sourceBuilder);

        SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);

        SearchHit searchHit = searchResponse.getHits().getAt(0);

        String resultString = searchHit.getSourceAsString();

        return resultString;

我只需要在结果中包含两个字段recipe\u IDrecipe\u url

您的路径正确,但需要在如下数组中指定字段:

    String[] includeFields = new String[] {"recipe_ID", "recipe_url"};
    sourceBuilder.fetchSource(includeFields, null);

我希望它只返回所有文档中这些字段的值。我怎么能这样做呢?上面的代码就是这么做的。你试过了吗?它给我0次点击。你确定你的索引中有什么东西吗?