Spring Data Repositories
Spring Data repositories, CrudRepository vs JpaRepository, niestandardowe zapytania, @EntityGraph, projekcje
1Jaka jest główna różnica między JpaRepository a CrudRepository?
Jaka jest główna różnica między JpaRepository a CrudRepository?
Odpowiedź
JpaRepository rozszerza zarówno CrudRepository, jak i PagingAndSortingRepository, dodając metody specyficzne dla JPA, takie jak flush(), saveAndFlush() i deleteInBatch(). CrudRepository udostępnia jedynie podstawowe operacje CRUD (save, findById, delete). Użycie JpaRepository daje dostęp do wszystkich zaawansowanych funkcji JPA bez potrzeby łączenia wielu interfejsów.
2Jaka jest rola PagingAndSortingRepository w hierarchii repository?
Jaka jest rola PagingAndSortingRepository w hierarchii repository?
Odpowiedź
PagingAndSortingRepository rozszerza CrudRepository, dodając metody findAll(Pageable) i findAll(Sort) do paginacji i sortowania. Pozwala to pobierać dane stronami za pomocą Page/Slice oraz sortować wyniki. JpaRepository rozszerza ten interfejs, zapewniając tym samym paginację, sortowanie i funkcje specyficzne dla JPA w jednym interfejsie.
3Jaka jest poprawna hierarchia interfejsów repository Spring Data?
Jaka jest poprawna hierarchia interfejsów repository Spring Data?
Odpowiedź
Poprawna hierarchia to Repository (bazowy) → CrudRepository (CRUD) → PagingAndSortingRepository (paginacja/sortowanie) → JpaRepository (specyficzny dla JPA). Każdy poziom dodaje funkcje: CrudRepository dodaje save/delete, PagingAndSortingRepository dodaje paginację/sortowanie, a JpaRepository dodaje flush/batch. Ta architektura pozwala wybrać wymagany poziom funkcji.
Która metoda JpaRepository pozwala natychmiast zsynchronizować zmiany z bazą danych?
W którym przypadku lepiej wybrać CrudRepository zamiast JpaRepository?
+22 pytań z rozmów
Inne tematy rekrutacyjne Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logowanie z SLF4J i Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Obsługa wyjątków
Bean Validation
Podstawy Spring Data JPA
Encje JPA i relacje
Zapytania JPA
Podstawy Spring Security
Spring Boot Actuator
Testy jednostkowe z JUnit i Mockito
Testowanie Spring Boot
Profiles i Environment
RestTemplate i WebClient
Async i Scheduling
Caching ze Spring
Spring WebFlux (Reactive)
Transakcje Spring
Zaawansowane uwierzytelnianie i autoryzacja
JWT i bezpieczeństwo stateless
OAuth2 i Authorization Server
Spring Boot i Docker
Microservices ze Spring
Spring Cloud Config
Optymalizacja wydajności
GraalVM Native Images
Opanuj Spring Boot na następną rozmowę
Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.
Zacznij za darmo