Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java MongoDB中cursor.count()和cursor.size()之间的差异_Java_Mongodb_Mongodb Java_Mongo Java - Fatal编程技术网

Java MongoDB中cursor.count()和cursor.size()之间的差异

Java MongoDB中cursor.count()和cursor.size()之间的差异,java,mongodb,mongodb-java,mongo-java,Java,Mongodb,Mongodb Java,Mongo Java,MongoDB的DBCursor方法的cursor.count()和cursor.size()之间有什么区别 从中,它说: :统计与查询匹配的对象数。这 没有考虑限制/跳过 :统计与查询匹配的对象数。这 未考虑限制/跳过 不仅仅是一个答案,我想指出一个问题,我们的团队面临着“混合”这两者的问题 我们有这样的事情: DBCursor cursor = collection.find(query).limit(batchSize); logger.info("{} items found.", c

MongoDB的
DBCursor
方法的
cursor.count()
cursor.size()
之间有什么区别

从中,它说:

:统计与查询匹配的对象数。这 没有考虑限制/跳过

:统计与查询匹配的对象数。这 未考虑限制/跳过


不仅仅是一个答案,我想指出一个问题,我们的团队面临着“混合”这两者的问题

我们有这样的事情:

DBCursor cursor = collection.find(query).limit(batchSize);

logger.info("{} items found.", cursor.count());

while (cursor.hasNext()) {
...
}
结果是,在调用
cursor.count()
方法后,限制被忽略了(请看另一个问题),我们想知道查询返回了多少项,所以我们应该调用
cursor.size()
方法,由于调用
计数
一个确实产生了不希望的副作用


我希望这能对其他人有所帮助,因为要找到我们面临的问题的根源并不容易。

两者似乎都是一样的……但为什么他们引入了两种这样的方法?两者之间有什么性能差异吗?我怀疑差异在于
不需要
需要
考虑限制/跳过。它们不一样。一个考虑了限制/跳过,但另一个没有。@RemonvanVliet有时在您感到信息过载时会微妙地丢失您是说
cursor.count()
不仅忽略了文档中的限制,而且实际上从游标中删除了限制,例如迭代游标等后续操作的行为就好像没有设置限制一样?