Paginasi dan Pengurutan
Kembalikan kumpulan data besar secara efisien.
Paginasi dan Pengurutan adalah pelajaran Spring Boot 4 Microservices & REST APIs gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Spring Boot 4 Microservices & REST APIs, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Spring Boot 4 Microservices & REST APIs mencakup 4 pelajaran total.
Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.
Why Paginate
Returning thousands of rows at once is slow and memory-heavy. Pagination fetches one page at a time.
Spring Data provides Pageable, Page, and Sort for this.
PagingAndSortingRepository
JpaRepository already includes paging and sorting support, so you get these methods for free.
public interface UserRepository
extends JpaRepository<User, Long> {
}Creating a Pageable
PageRequest.of(page, size) builds a request. Page numbers are zero-based.
Pageable pageable = PageRequest.of(0, 20);
Page<User> page = userRepository.findAll(pageable);The Page Object
A Page carries the content plus metadata.
List<User> content = page.getContent();
long total = page.getTotalElements();
int pages = page.getTotalPages();
boolean hasNext = page.hasNext();Sorting
Build a Sort and pass it alone or inside a PageRequest.
Sort sort = Sort.by("name").ascending();
List<User> sorted = userRepository.findAll(sort);Combining Sort and Paging
Pass a Sort into PageRequest.of.
Pageable pageable = PageRequest.of(
0, 20, Sort.by("name").descending());
Page<User> page = userRepository.findAll(pageable);Multiple Sort Orders
Chain sort orders for tie-breaking.
Sort sort = Sort.by(
Sort.Order.asc("lastName"),
Sort.Order.desc("createdAt"));Paging Derived Queries
Add a Pageable parameter to any derived query method.
Page<User> findByActiveTrue(Pageable pageable);Slice vs Page
A Slice knows only whether a next page exists, skipping the expensive COUNT query that Page runs. Use Slice for infinite scroll.
Slice<User> findByActiveTrue(Pageable pageable);Pageable from the Web Layer
Spring MVC can bind page, size, and sort request params into a Pageable automatically.
@GetMapping("/users")
public Page<User> list(Pageable pageable) {
return userRepository.findAll(pageable);
}
// GET /users?page=0&size=20&sort=name,descMapping Page Content to DTOs
Transform a Page's entities to DTOs while preserving pagination metadata with map.
Page<UserDto> dtos = page.map(
user -> new UserDto(user.getName(), user.getEmail()));Quick Check
Test your understanding of pagination.
Recap
You learned pagination and sorting:
PageRequest.of(page, size)— page is zero-basedPagecarries content plus totals;Sliceskips the countSort.by(...)for ordering- Web layer binds
page/size/sortinto aPageable
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Paginasi dan Pengurutan” gratis?
Ya — teks lengkap “Paginasi dan Pengurutan” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Spring Boot 4 Microservices & REST APIs, upgrade ke CoddyKit PRO. Kursus Spring Boot 4 Microservices & REST APIs mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Paginasi dan Pengurutan”?
Kembalikan kumpulan data besar secara efisien. Kamu berlatih Spring Boot 4 Microservices & REST APIs dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Spring Boot 4 Microservices & REST APIs?
Tidak diperlukan pengalaman sebelumnya. Spring Boot 4 Microservices & REST APIs di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Paginasi dan Pengurutan” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Spring Boot 4 Microservices & REST APIs ini?
Ya. Setiap pelajaran Spring Boot 4 Microservices & REST APIs menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Kueri Dinamis dengan Spesifikasi
- Proyeksi dan DTO
- Audit dengan @CreatedDate
- Paginasi dan Pengurutan