Spóźniona odpowiedź, ale może w przyszłości komuś pomoże. Dane Spring nie zapewniają żadnego interfejsu API do pakowania Kursora Mongo DB możliwości. Używa go w find
metod, ale zawsze zwraca kompletną listę obiektów. Opcje to bezpośrednie użycie Mongo API lub użycie Spring Data Paging API , coś takiego:
final int pageLimit = 300;
int pageNumber = 0;
Page<T> page = repository.findAll(new PageRequest(pageNumber, pageLimit));
while (page.hasNextPage()) {
processPageContent(page.getContent());
page = repository.findAll(new PageRequest(++pageNumber, pageLimit));
}
// process last page
processPageContent(page.getContent());
UPD (!) Ta metoda jest niewystarczająca w przypadku dużych zestawów danych (patrz komentarze @Shawn Bush) W takich przypadkach używaj bezpośrednio Mongo API.