Ich möchte große Datenmengen auf einer Datentabelle zeigen. Ich verwende Angular2 für meine UI und Spring REST API für das Backend. Wie kann ich meine Daten mit Paginierung und Filtern gestalten, um ein hohes Datenvolumen problemlos bewältigen zu können? Wie gestalte ich mein Backend für diese Anforderung?Angular2-Datentabelle mit hoher Datenmenge
Antwort
Sie können einen paginierten REST-Service implementieren.
Sagen wir, wir möchten in einer Datentabelle alle Benutzer in unserer Datenbank zeigen.
Wir werden ein Verfahren mit der folgenden Signatur haben:
public ResponseEntity<PaginatedResponse<User>> getUsers(
@RequestParam("page") int page, @RequestParam("size") int size)
Hier haben wir die Seitenzahl und die Größe jeder Seite in der Anforderung senden.
Wir definieren die Antwort:
public class PaginatedResponse<T> {
private List<T> responseList;
private int pageNumber;
private int pageSize;
private int totalPageNumber;
}
In der Antwort werden wir die Gesamtzahl der Seiten haben und die Größe der aktuellen Seite, zusammen mit seinem Index.
Für die Datenschicht Sie Feder Daten verwenden können:
public interface UserRepository extends JpaRepository<User, Long>, QueryDslPredicateExecutor<User>
und erklären die Methode, um die seitenwechselbar Daten zu extrahieren:
@Query("select u, from User u")
Page<User> findUsers(final Pageable pageable);
Beachten Sie, dass Sie Parameter hinzufügen können Ihre Federdatenabfrage filtern mit @Param
Annotation.
Was den Winkelteil, müssen Sie iterieren http ruft die Daten zu erhalten, und jedes Mal überprüfen, ob die Seite Index im Bereich (dh < totalPageNumber)
- 1. Druckergebnisse mit hoher Präzision (Gleitkomma)
- 2. Bild mit hoher Auflösung - OutOfMemoryError
- 3. Traffic-Generierung mit hoher Bandbreite
- 4. SQL-Profile mit hoher Aktivität
- 5. Große Datenmenge speichern
- 6. gleiche Datenmenge unterschiedliche Prognoseergebnisse
- 7. Verarbeitung eine große Datenmenge
- 8. Linux read() minimale Datenmenge
- 9. Update Stripe Datenmenge
- 10. Anzeigen einer Datenmenge mit Microsoft Report Viewer
- 11. Loading und Filtering Enorme Datenmenge mit Linq
- 12. Nicht möglich, große Datenmenge mit json
- 13. Umgang mit großen Datenmenge -Web API
- 14. Schriftgröße für Outlook 2013 mit hoher DPI
- 15. Canvas-Inhalt als Bild mit hoher Auflösung.
- 16. Anzeigen von Bild mit hoher Auflösung
- 17. Die Begriffe mit hoher Dokumenthäufigkeit erhalten
- 18. Kind div mit hoher z-index nicht
- 19. Java Fließkomma-Bibliothek mit hoher Präzision
- 20. Methoden mit hoher Komplexität in SonarQube
- 21. Effizientes Aktualisieren eines QTableView mit hoher Geschwindigkeit
- 22. Inverse einer Matrix mit hoher Bedingungsnummer suchen
- 23. Drucken hoher Auflösung mit temporärer Bitmap
- 24. Android-Begrüßungsbildschirm für Geräte mit hoher Auflösung
- 25. Niedriger FPS und hoher Speicherverbrauch mit Hintergrundbild
- 26. Annullierung des niederfrequenten Rauschsignals mit hoher Amplitude
- 27. Firefox merkwürdiges JavaScript-Verhalten mit hoher DPI
- 28. Bilder mit hoher Auflösung in einer uiwebview
- 29. Erzielen hoher Verfügbarkeit mit Azure Traffic Manager
- 30. Delphi Standard-Datenmenge Aktion Tdatasetdelete
Werfen Sie einen Blick auf diese: http: //www.baeldung.com/rest-apipagination-in-spring –