Используя остальные-клиентов/_search размера = 100 & от = 500, способного принести результатыУпругий Поиск: Последовательная навигация Страницы с использованием результатов пружинно-данными-elasticsearch пустыми после определенного предела
же оленья кожа работа с шагом ниже, используя код
Использование пружинный данных-elasticsearch со следующими ниже фрагменты кода Об использовании размера = 100, из = 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);
нам нужно добавить любой дополнительный шаг к выше фрагментам, чтобы получить желаемые результаты Do?
0
A
ответ
1
PageRequest
constructor не принимает from
и size
в качестве аргументов, но и page
size
, который отличается, потому что page
и from
не то же самое.
Если вы хотите, чтобы ваши страницы содержат 100 элементов, то вместо from=500
вам нужно использовать page=5
nativeSearchQueryBuilder.withPageable(new PageRequest(5, 100));
Спасибо поняли, его правильно, поэтому эластичный поиск апите оленью кожу имеет такую поддержку, так же поддерживаются с restclient? –
Это то же самое, что реализовано иначе, просто размер страницы + вместо +. «PageRequest» происходит от Spring Data Core и представляет собой абстракцию, подходящую для любого типа базового хранилища данных (ES, JPA, MongoDB Cassandra и т. Д.). Под капотом 'PageRequest' использует и/размер, когда используется против Elasticsearch. – Val
Спасибо @Val за подробное объяснение –