الترقيم (Pagination)
في هذا الدرس 4 موضوعات
هذا الدرس مخطط له. يعرض المخطط أدناه الموضوعات التي سيغطيها، ولم يُنشر الدرس الكامل بعد.
نص الدروس والتمارين باللغة الإنجليزية، بينما تبقى واجهة الموقع وعناوين الدروس بالعربية.
في هذا الدرس
return lists in pages.
الموضوعات المخطط لها
- An unbounded list grows until it breaks the server and the client.
- Use
page(starting at 0 or 1; pick one) andsizequery parameters. - Cap the size: if the client asks for 10,000, return at most your maximum (for example 100).
- Return the page items plus metadata: page, size, total elements, total pages.
- Spring Data offers
Pageable; with the in-memory repository now, implement it by hand and swap later (JNR-P4).
تفاصيل المخطط المبدئي
عرض عملي
int safeSize = Math.min(Math.max(size, 1), 100);
List<Product> slice = all.stream().skip((long) page * safeSize).limit(safeSize).toList();اختبر فهمك
Why cap size?
أظهر الإجابة
One request must not be able to load everything.
التطبيق
طبّق هذا الدرس بمختبر الوحدة وتمارينها واختبارها.
تعليم الدرس كمكتمل اختياري ويمكنك التراجع عنه في أي وقت. يبقى تقدمك محفوظًا في هذا المتصفح.