Spring Boot 4 Microservices & REST APIs · Leçon

Pagination et tri

Renvoyez efficacement de grands ensembles de données.

Leçon 4 sur 413 étapes

Pagination et tri est une leçon Spring Boot 4 Microservices & REST APIs gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Spring Boot 4 Microservices & REST APIs, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Spring Boot 4 Microservices & REST APIs comprend 4 leçons au total.

Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.

Why Paginate

Returning thousands of rows at once is slow and memory-heavy. Pagination fetches one page at a time.

Spring Data provides Pageable, Page, and Sort for this.

PagingAndSortingRepository

JpaRepository already includes paging and sorting support, so you get these methods for free.

public interface UserRepository
    extends JpaRepository<User, Long> {
}

Creating a Pageable

PageRequest.of(page, size) builds a request. Page numbers are zero-based.

Pageable pageable = PageRequest.of(0, 20);
Page<User> page = userRepository.findAll(pageable);

The Page Object

A Page carries the content plus metadata.

List<User> content = page.getContent();
long total = page.getTotalElements();
int pages = page.getTotalPages();
boolean hasNext = page.hasNext();

Sorting

Build a Sort and pass it alone or inside a PageRequest.

Sort sort = Sort.by("name").ascending();
List<User> sorted = userRepository.findAll(sort);

Combining Sort and Paging

Pass a Sort into PageRequest.of.

Pageable pageable = PageRequest.of(
    0, 20, Sort.by("name").descending());
Page<User> page = userRepository.findAll(pageable);

Multiple Sort Orders

Chain sort orders for tie-breaking.

Sort sort = Sort.by(
    Sort.Order.asc("lastName"),
    Sort.Order.desc("createdAt"));

Paging Derived Queries

Add a Pageable parameter to any derived query method.

Page<User> findByActiveTrue(Pageable pageable);

Slice vs Page

A Slice knows only whether a next page exists, skipping the expensive COUNT query that Page runs. Use Slice for infinite scroll.

Slice<User> findByActiveTrue(Pageable pageable);

Pageable from the Web Layer

Spring MVC can bind page, size, and sort request params into a Pageable automatically.

@GetMapping("/users")
public Page<User> list(Pageable pageable) {
    return userRepository.findAll(pageable);
}
// GET /users?page=0&size=20&sort=name,desc

Mapping Page Content to DTOs

Transform a Page's entities to DTOs while preserving pagination metadata with map.

Page<UserDto> dtos = page.map(
    user -> new UserDto(user.getName(), user.getEmail()));

Quick Check

Test your understanding of pagination.

Recap

You learned pagination and sorting:

  • PageRequest.of(page, size) — page is zero-based
  • Page carries content plus totals; Slice skips the count
  • Sort.by(...) for ordering
  • Web layer binds page/size/sort into a Pageable
Gratuit pour commencer

Apprends Java avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
24
Leçons
93

Questions Fréquemment Posées

La leçon « Pagination et tri » est-elle gratuite ?

Oui — le texte complet de « Pagination et tri » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Spring Boot 4 Microservices & REST APIs, passe à CoddyKit PRO. Le cours Spring Boot 4 Microservices & REST APIs comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Pagination et tri » ?

Renvoyez efficacement de grands ensembles de données. Tu pratiques Spring Boot 4 Microservices & REST APIs avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Spring Boot 4 Microservices & REST APIs ?

Aucune expérience préalable n'est requise. Spring Boot 4 Microservices & REST APIs sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Pagination et tri » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Spring Boot 4 Microservices & REST APIs ?

Oui. Chaque leçon Spring Boot 4 Microservices & REST APIs inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Requêtes dynamiques avec les spécifications
  2. Projections et DTO
  3. Audit avec @CreatedDate
  4. Pagination et tri
← Retour à Spring Boot 4 Microservices & REST APIs