MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Как можем да внедрим Pagination за Mongodb Collection с помощта на mongoTemplate

За общо страниране можете да използвате .skip() и .limit() модификатори на обекта Query, които можете да подадете като аргументи към вашия метод:

    Query query = new Query();
    query.addCriteria(Criteria.where("a").is("b"));
    query.skip(10);
    query.limit(10);

    List<Foo> results = mongoOperation.find(query, Foo);

С .skip() това е как може резултатите да преминат и .limit() е размерът на страницата за връщане.

Така че извлечете екземпляр на MongoOperations от MongoTemplate и използвайте стандартен .find() операция от там.

Пропускане и ограничаване обаче не е най-ефективният вариант, опитайте се да съхраните последно видяните стойности в естествен индекс като _id където е възможно и използвайте заявки за обхват, за да избегнете „прескачане“ през 1000 резултати.

    Query query = new Query();
    query.addCriteria(Criteria.where("_id").gt(lastSeen));
    query.limit(10);


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Отношения на MongoDB:вграждане или справка?

  2. Как да получите целия брой на модела мангуста?

  3. Десериализиращ интерфейс в MongoDB с помощта на C# - Неизвестна стойност на дискриминатор

  4. Как да управлявате бази данни и колекции в MongoDB

  5. Как да върна JSON данни от php MongoCursor