Как работает пагинация в Spring Data JPA?

Middle
346 просмотров
AFK Offer AI

Метод репозитория принимает Pageable и возвращает Page. Pageable создаёшь через PageRequest.of(page, size, Sort.by("name")). Page содержит контент, общее количество элементов/страниц, номер текущей страницы. Slice — без count-запроса (быстрее для бесконечной прокрутки). В контроллере Spring автоматически создаёт Pageable из query-параметров: ?page=0&size=20&sort=name,desc. Кастомная сортировка: Sort.by(Order.asc("name"), Order.desc("date")).

Следующий вопрос

В чём разница между Runnable и Callable?