目前org.springframework.data.domain.PageRequest
不允许大小为零,实际上在AbstractPageRequest
构造函数中对此进行了检查。
那么我们应该如何在org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder
中将大小设置为零?
关键是可以在org.elasticsearch.action.search.SearchRequestBuilder
上设置大小0。实际上有一个众所周知的用例,其中一个应该将大小设置为零:“我只是对聚合结果感兴趣,而不是对查询找到的文档感兴趣”。
以下是我的代码的快照,它抛出了IllegalArgumentException
:
SearchQuery searchQuery = (SearchQuery) new NativeSearchQueryBuilder()
.withIndices(indices).withTypes(types)
.withQuery(query).addAggregation(agg)
.withPageable(new PageRequest(0, 0)).build();