Para la paginación general, puede usar .skip() y .limit() modificadores en el objeto Query que puede pasar como argumentos a su método:
Query query = new Query();
query.addCriteria(Criteria.where("a").is("b"));
query.skip(10);
query.limit(10);
List<Foo> results = mongoOperation.find(query, Foo);
Con .skip() siendo cómo pueden pasar los resultados y .limit() siendo el tamaño de página a devolver.
Así que obtenga una instancia de MongoOperations de MongoTemplate y use un .find() estándar operación desde allí.
Sin embargo, omitir y limitar no es la opción de mayor rendimiento, intente almacenar los últimos valores vistos en un índice natural como _id donde sea posible y use consultas de rango para evitar "saltar" miles de resultados.
Query query = new Query();
query.addCriteria(Criteria.where("_id").gt(lastSeen));
query.limit(10);