Wie können wir das umsetzen Paginierung für Mongodb Collection mit mongoTemplate
Ich bin ein noob in mongoDb ich implementieren müssen, um Seitenumbrüche für jede bestimmte Sammlung zum Beispiel sagen
Habe ich eine Sammlung Foo und ich haben eine Funktion zurückgibt, die alle Datensätze aus Foo Sammlung
public List<Foo> getFoo(){
}
Aber ich muss fetch Datensätze aus Foo durch die Implementierung der Paginierung wie kann ich erreichen dies, indem Sie mongoTemplate Spring data mongodb?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Für Allgemeine Paginierung können Sie die
.skip()
und.limit()
Modifikatoren auf das Query-Objekt, das Sie übergeben können, die als Argumente an die Methode:Mit
.skip()
werden, wie können Ergebnisse gehen vorbei und.limit()
die Seitengröße zurückzukehren.Damit daraus eine Instanz von MongoOperations von MongoTemplate und verwenden Sie ein standard -
.find()
Betrieb von dort aus.Überspringen und limit ist nicht die leistungsstärkste option, obwohl, versuchen Sie zum speichern die zuletzt gesehene Werte auf ein natürliches index wie
_id
wo möglich und range-queries zu vermeiden "skipping" durch 1000 ' s der Ergebnisse.Können Sie überspringen und zu begrenzen, die die Abfrage, die Sie verwenden, und dies sollte helfen, tun Paginierung.
Werfen Sie einen Blick auf die Methode finden in MongoTemplate Klasse.
Ihre Methode sollte so Aussehen: