Sen svar, men kanske hjälper någon i framtiden. Springdata tillhandahåller inget API för att omsluta Mongo DB Cursor Förmågor. Den använder den inom find
metoder, men returnerar alltid en komplett lista med objekt. Alternativen är att använda Mongo API direkt eller att använda Spring Data Paging API , något liknande:
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 (!) Den här metoden är inte tillräcklig för stora uppsättningar data (se @Shawn Bush kommentarer) Använd Mongo API direkt för sådana fall.