使用rest-clients/_search?size=100&from=500,能够获取结果
使用代码的以下步骤不起作用
通过以下代码片段使用spring-data-elasticsearch 使用 size=100, from=500 时,结果为空
注意:它仅成功获取结果一次,即在创建索引之后
NativeSearchQueryBuilder nativeSearchQueryBuilder = new NativeSearchQueryBuilder(); nativeSearchQueryBuilder.withIndices("indexName"); nativeSearchQueryBuilder.withTypes("someType"); nativeSearchQueryBuilder.withPageable(new PageRequest(500, 100)); SearchQuery searchQuery = nativeSearchQueryBuilder.build(); elasticsearchTemplate.queryForList(searchQuery, className);
我们是否需要在上述代码片段中添加任何额外的步骤才能获得所需的结果?
最佳答案
PageRequest
constructor不采用 from
和 size
作为参数,但 page
和 size
是不同的,因为 page
和 from
不同。
如果您希望页面包含 100 个元素,则需要使用 page=5
而不是 from=500
nativeSearchQueryBuilder.withPageable(new PageRequest(5, 100));
关于java - Elasticsearch : Consecutive Page navigation using spring-data-elasticsearch results empty after certain limit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40771863/