码上敲享录 > java入门知识分享 > java分页获取mongodb的大量数据并遍历处理

java分页获取mongodb的大量数据并遍历处理

上一章章节目录下一章 2019-05-24已有3286人阅读 评论(0)

java分页获取mongodb的大量数据并遍历处理


解决方法:

以下代码分页获取mongodb的数据并遍历处理,如果数据比较多,建议后台启动一个定时器去执行这些代码

MongoCollection<Document> collection = MongoDb.getDb().getCollection("table_2019");

BasicDBObject doc = new BasicDBObject();

int count = (int) MongoDb.getCount(collection,doc);

int pageSize=20000;//每次获取20000条

int pageCount=count/pageSize+1;//计算页数

int page=1;

do {

HashMap<String, Integer> map = new HashMap<String,Integer>();

MongoCursor<Document> iteratorDoc = null;  

//ts是排序的字段,改成你的即可

      iteratorDoc = collection.find(doc).sort(new BasicDBObject("ts", 1)).skip((page-1)*pageSize).limit(pageSize).iterator();  

       while(iteratorDoc.hasNext()){

       Document document=iteratorDoc.next();

           }

           if(iteratorDoc!=null){

           iteratorDoc.close();

           }

         

         

           page++;

} while (page <= pageCount);


0

有建议,请留言!

  • *您的姓名:

  • *所在城市:

  • *您的联系电话:

    *您的QQ:

  • 咨询问题:

  • 提 交