分享一个MongoDB分页查询

匿名 (未验证) 提交于 2019-12-02 23:03:14
版权声明:望支持~~~ https://blog.csdn.net/u011663149/article/details/85300214

之前的csdn找不回来了,决定重新注册一个。望支持~~~

之前有个新同学问我mongo分页的问题,分享一下。

一如既往,不多BB。直接搂代码:

   @Override     public List<T> find(Query query, Class<T> clazz) {         return mongoTemplate.find(query, clazz);     }      @Override     public List<T> find(Query query, Class<T> clazz, String collectionName) {         return mongoTemplate.find(query, clazz, collectionName);     }
   /**      * 通过条件查询,查询分页结果      *      * @param paging 分页信息      * @param query  查询条件      * @param clazz  clazz      * @return 分页数据      */     @Override     public Paging<T> getPage(Paging<T> paging, Query query, Class<T> clazz) {         //查询总条数         long totalCount = this.mongoTemplate.count(query, clazz);         //设置总条数         paging.setTotalCount(totalCount);         //skip相当于从那条记录开始         query.skip(paging.getFirstResult());         //从skip开始,取多少条记录         query.limit(paging.getPageSize());         List<T> list = this.find(query, clazz);         paging.setData(list);         return paging;     }
   /**      * 通过条件查询,查询分页结果      *      * @param paging         分页信息      * @param query          查询条件      * @param clazz          clazz      * @param collectionName 集合名称      * @return 分页数据      */     @Override     public Paging<T> getPage(Paging<T> paging, Query query, Class<T> clazz, String collectionName) {         //查询总条数         long totalCount = this.mongoTemplate.count(query, clazz, collectionName);         //设置总条数         paging.setTotalCount(totalCount);         //skip相当于从那条记录开始         query.skip(paging.getFirstResult());         //从skip开始,取多少条记录         query.limit(paging.getPageSize());         List<T> list = this.find(query, clazz, collectionName);         paging.setData(list);         return paging;     } 

这里采用的MongoTemplate进行客户端连接~~~

之前的csdn找不回来了,决定重新注册一个。望支持~~~

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!