mongodb快速查询总数
无需使用db.find去统计count,如果数据很多就会很慢。最简单的获取总数方法就是查询collection状态
ConnectionString connString = new ConnectionString(
"mongodb://192.168.30.216:27017/tunnel_db?w=majority"
);
MongoClientSettings settings = MongoClientSettings.builder()
.applyConnectionString(connString)
.retryWrites(true)
.build();
MongoClient mongoClient = MongoClients.create(settings);
MongoDatabase database = mongoClient.getDatabase("tunnel_db");
FindIterable res = database.getCollection("history").find().skip(10).limit(10);
for (Document d : res) {
System.out.println(d.toJson());
}
Document stats = database.runCommand(new Document("collStats", "history"));
System.out.println(stats);