Spring Boot

Spring Data Repositories

Spring Data repositories, CrudRepository vs JpaRepository, custom queries, @EntityGraph, projections

25 questions d'entretien·
Confirmé
1

Quelle est la principale différence entre JpaRepository et CrudRepository ?

Réponse

JpaRepository étend CrudRepository et PagingAndSortingRepository, ajoutant des méthodes JPA spécifiques comme flush(), saveAndFlush() et deleteInBatch(). CrudRepository fournit uniquement les opérations CRUD de base (save, findById, delete). Utiliser JpaRepository donne accès à toutes les fonctionnalités JPA avancées sans devoir composer plusieurs interfaces.

2

Quel est le rôle de PagingAndSortingRepository dans la hiérarchie des repositories ?

Réponse

PagingAndSortingRepository étend CrudRepository en ajoutant les méthodes findAll(Pageable) et findAll(Sort) pour la pagination et le tri. Cela permet de récupérer des données par pages avec Page/Slice et de trier les résultats. JpaRepository étend cette interface, offrant donc pagination, tri et fonctionnalités JPA spécifiques dans une seule interface.

3

Quelle est la hiérarchie correcte des interfaces de repository Spring Data ?

Réponse

La hiérarchie correcte est Repository (base) → CrudRepository (CRUD) → PagingAndSortingRepository (pagination/tri) → JpaRepository (JPA spécifique). Chaque niveau ajoute des fonctionnalités : CrudRepository ajoute save/delete, PagingAndSortingRepository ajoute pagination/tri, et JpaRepository ajoute flush/batch. Cette architecture permet de choisir le niveau de fonctionnalités nécessaire.

4

Quelle méthode JpaRepository permet de synchroniser immédiatement les changements avec la base de données ?

5

Dans quel cas préférer CrudRepository plutôt que JpaRepository ?

+22 questions d'entretien

Maîtrise Spring Boot pour ton prochain entretien

Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.

Commencer gratuitement