Есть ли способ реализовать разбиение на страницы весной?

Я пытаюсь понять реактивную часть весны 5. Я создал простую точку отдыха для поиска всех объектов, использующих весенний web-flux и весенние данные, реактивные (mongo), но не вижу способа реализовать разбиение на страницы.

Вот мой простой пример в Котлине:

 @GetMapping("/posts/") fun getAllPosts() = postRepository.findAll() 

Означает ли это, что реактивная конечная точка не требует разбивки на страницы? Есть ли способ реализовать разбиение на страницы со стороны сервера с помощью этого стека?

Реактивная поддержка в Spring Data не предоставляет средства возвращаемого типа Page . Тем не Pageable параметр Pageable поддерживается в сигнатурах методов, проходящих по limit и offset к драйверам, и, следовательно, самому хранилищу, возвращая Flux<T> который испускает запрошенный диапазон.

 Flux<Person> findByFirstname(String firstname, Pageable pageable); 

Для получения дополнительной информации ознакомьтесь с текущей справочной документацией для 2.0.RC2 и примеров данных Spring .

Flux обеспечивает skip и методы, чтобы получить поддержку разбивки на страницы, а также вы можете использовать filter и sort для фильтрации и сортировки результата.

Для меня действуют следующие коды.

 @GetMapping("") public Flux<Post> all(@RequestParam(value = "q", required = false) String q, @RequestParam(value = "page", defaultValue = "0") long page, @RequestParam(value = "size", defaultValue = "10") long size) { return this.postRepository.findAll() .filter(p -> Optional.ofNullable(q).map(key -> p.getTitle().contains(key) || p.getContent().contains(key)).orElse(true)) .sort(comparing(Post::getCreatedDate).reversed()) .skip(page * size).take(size); } 
Intereting Posts
Как я могу повторно использовать / составлять часть запроса JOOQ в методе репозитория? Как обновить kotlin-js-library до 1.1.3, как это было с kotlin-gradle-plugin? registerReceiver () показывает ошибку для перегруженного метода Как переписать этот класс Java в класс данных Kotlin? kotlin, как добавить функцию расширения к уже определенному классу сопутствующего объекта Невозможно выполнить добавление BigInteger Студия Android не разрешает классы, написанные в Kotlin (.kt) в среде IDE, но компилирует отлично Список связанных со списком в Котлине Почему Kotlin lang допускает только одну главную функцию в проекте? Равенство класса данных в Котлине Тип функции с приемником в Scala Невозможно посмотреть переменную Kotlin в студии Android Получить свойство KProperty свойства расширения без пакета Библиотека для обнаружения утечки памяти в android с помощью Kotlin Async Spring Boot с использованием Kotlin не работает