Късен отговор, но може би ще помогне на някого в бъдеще. Spring данните не предоставят API за обвиване на Mongo DB Cursor възможности. Използва го в find
методи, но винаги връща завършен списък с обекти. Опциите са да се използва директно API на Mongo или да се използва API на Spring Data Paging , нещо подобно:
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 (!) Този метод не е достатъчен за големи набори от данни (вижте коментарите на @Shawn Bush) Моля, използвайте директно API на Mongo за такива случаи.