Spring Data Repositories
Spring Data repositories, CrudRepository vs JpaRepository, custom queries, @EntityGraph, projections
1What is the main difference between JpaRepository and CrudRepository?
What is the main difference between JpaRepository and CrudRepository?
Câu trả lời
JpaRepository extends both CrudRepository and PagingAndSortingRepository, adding JPA-specific methods like flush(), saveAndFlush(), and deleteInBatch(). CrudRepository only provides basic CRUD operations (save, findById, delete). Using JpaRepository gives access to all advanced JPA features without needing to compose multiple interfaces.
2What is the role of PagingAndSortingRepository in the repository hierarchy?
What is the role of PagingAndSortingRepository in the repository hierarchy?
Câu trả lời
PagingAndSortingRepository extends CrudRepository by adding findAll(Pageable) and findAll(Sort) methods for pagination and sorting. This allows retrieving data in pages with Page/Slice and sorting results. JpaRepository extends this interface, thus providing pagination, sorting, and JPA-specific features in a single interface.
3What is the correct hierarchy of Spring Data repository interfaces?
What is the correct hierarchy of Spring Data repository interfaces?
Câu trả lời
The correct hierarchy is Repository (base) → CrudRepository (CRUD) → PagingAndSortingRepository (pagination/sorting) → JpaRepository (JPA-specific). Each level adds features: CrudRepository adds save/delete, PagingAndSortingRepository adds pagination/sorting, and JpaRepository adds flush/batch. This architecture allows choosing the required feature level.
Which JpaRepository method allows immediately synchronizing changes with the database?
In which case prefer CrudRepository over JpaRepository?
+22 câu hỏi phỏng vấn
Các chủ đề phỏng vấn Spring Boot khác
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging with SLF4J & Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Exception Handling
Bean Validation
Spring Data JPA Basics
JPA Entities & Relationships
JPA Queries
Spring Security Basics
Spring Boot Actuator
Unit Testing with JUnit & Mockito
Spring Boot Testing
Profiles & Environment
RestTemplate & WebClient
Async & Scheduling
Caching with Spring
Spring WebFlux (Reactive)
Spring Transactions
Advanced Authentication & Authorization
JWT & Stateless Security
OAuth2 & Authorization Server
Spring Boot & Docker
Microservices with Spring
Spring Cloud Config
Performance Optimization
GraalVM Native Images
Nắm vững Spring Boot cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí