Spring Boot

Spring Data Repositories

Spring Data Repositories, CrudRepository vs. JpaRepository, benutzerdefinierte Queries, @EntityGraph, Projektionen

25 Interview-Fragen·
Mid-Level
1

Was ist der Hauptunterschied zwischen JpaRepository und CrudRepository?

Antwort

JpaRepository erweitert sowohl CrudRepository als auch PagingAndSortingRepository und fügt JPA-spezifische Methoden wie flush(), saveAndFlush() und deleteInBatch() hinzu. CrudRepository bietet nur die grundlegenden CRUD-Operationen (save, findById, delete). Die Verwendung von JpaRepository ermöglicht den Zugriff auf alle erweiterten JPA-Funktionen, ohne mehrere Interfaces kombinieren zu müssen.

2

Welche Rolle spielt PagingAndSortingRepository in der Repository-Hierarchie?

Antwort

PagingAndSortingRepository erweitert CrudRepository, indem es die Methoden findAll(Pageable) und findAll(Sort) für Pagination und Sortierung hinzufügt. Damit lassen sich Daten seitenweise mit Page/Slice abrufen und Ergebnisse sortieren. JpaRepository erweitert dieses Interface und bietet so Pagination, Sortierung und JPA-spezifische Funktionen in einem einzigen Interface.

3

Was ist die korrekte Hierarchie der Spring Data Repository-Interfaces?

Antwort

Die korrekte Hierarchie ist Repository (Basis) → CrudRepository (CRUD) → PagingAndSortingRepository (Pagination/Sortierung) → JpaRepository (JPA-spezifisch). Jede Ebene fügt Funktionen hinzu: CrudRepository fügt save/delete hinzu, PagingAndSortingRepository fügt Pagination/Sortierung hinzu und JpaRepository fügt flush/batch hinzu. Diese Architektur ermöglicht die Wahl der benötigten Funktionsebene.

4

Welche JpaRepository-Methode ermöglicht es, Änderungen sofort mit der Datenbank zu synchronisieren?

5

In welchem Fall sollte man CrudRepository gegenüber JpaRepository bevorzugen?

+22 Interview-Fragen

Meistere Spring Boot für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten