Spring Data Repositories
Spring Data repositories, CrudRepository vs JpaRepository, kueri kustom, @EntityGraph, proyeksi
1Apa perbedaan utama antara JpaRepository dan CrudRepository?
Apa perbedaan utama antara JpaRepository dan CrudRepository?
Jawaban
JpaRepository memperluas baik CrudRepository maupun PagingAndSortingRepository, menambahkan metode khusus JPA seperti flush(), saveAndFlush(), dan deleteInBatch(). CrudRepository hanya menyediakan operasi CRUD dasar (save, findById, delete). Menggunakan JpaRepository memberikan akses ke semua fitur JPA tingkat lanjut tanpa perlu menggabungkan beberapa interface.
2Apa peran PagingAndSortingRepository dalam hierarki repository?
Apa peran PagingAndSortingRepository dalam hierarki repository?
Jawaban
PagingAndSortingRepository memperluas CrudRepository dengan menambahkan metode findAll(Pageable) dan findAll(Sort) untuk paginasi dan pengurutan. Ini memungkinkan pengambilan data per halaman dengan Page/Slice dan pengurutan hasil. JpaRepository memperluas interface ini, sehingga menyediakan paginasi, pengurutan, dan fitur khusus JPA dalam satu interface.
3Apa hierarki yang benar dari interface repository Spring Data?
Apa hierarki yang benar dari interface repository Spring Data?
Jawaban
Hierarki yang benar adalah Repository (dasar) → CrudRepository (CRUD) → PagingAndSortingRepository (paginasi/pengurutan) → JpaRepository (khusus JPA). Setiap tingkat menambahkan fitur: CrudRepository menambahkan save/delete, PagingAndSortingRepository menambahkan paginasi/pengurutan, dan JpaRepository menambahkan flush/batch. Arsitektur ini memungkinkan pemilihan tingkat fitur yang dibutuhkan.
Metode JpaRepository mana yang memungkinkan sinkronisasi perubahan secara langsung dengan database?
Dalam kasus mana sebaiknya memilih CrudRepository daripada JpaRepository?
+22 pertanyaan wawancara
Topik wawancara Spring Boot lainnya
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging dengan SLF4J & Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Penanganan Eksepsi
Bean Validation
Dasar-Dasar Spring Data JPA
Entitas JPA & Relasi
Kueri JPA
Dasar-Dasar Spring Security
Spring Boot Actuator
Unit Testing dengan JUnit & Mockito
Pengujian Spring Boot
Profiles dan Environment
RestTemplate & WebClient
Async & Scheduling
Caching dengan Spring
Spring WebFlux (Reactive)
Transaksi Spring
Autentikasi & otorisasi tingkat lanjut
JWT & Keamanan Stateless
OAuth2 & Authorization Server
Spring Boot & Docker
Microservices dengan Spring
Spring Cloud Config
Optimasi Performa
GraalVM Native Images
Kuasai Spring Boot untuk wawancara berikutnya
Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.
Mulai gratis