Лучше использовать пагинацию в репозиториях вместо того, чтобы вытягивать все данные разом.
Вместо такого репозитория:
public interface BookRepository extends JpaRepository<Book, Long> {
List<Book> findAll();
}Лучше так:
public interface BookRepository extends JpaRepository<Book, Long> {
Page<Book> findAll(Pageable pageable);
}И дальше в сервисном слое:
public Page<Book> getBooks(int page, int size) {
Pageable pageable = PageRequest.of(page, size, Sort.by("createdAt").descending());
return bookRepository.findAll(pageable);
}👉 Java Portal