我想知道mongocusor和finderable之间的区别。
Mongoursor公司:

MongoCursor<Document> cursorPersonDoc = personDocCollection.find(whereClauseCondition).iterator();
        while (cursorPersonDoc.hasNext()) {
           Document doc = cursorPersonDoc.next();
           String s1 = doc.getString("s1");
         }

可查找:
FindIterable<Document> cursorPersonDoc = personDocCollection.find(whereClauseCondition);
    for (doc: cursorPersonDoc){
      String s1 = doc.getString("s1");
    }

最佳答案

如果你看看这两个类中的方法,你会有一个想法。
Finditerable有类似filterlimitskip的方法,这些方法将帮助您筛选出结果。
它还有一些方法,比如maxAwaitTime(用于可裁剪的光标)和maxTime
Mongoursor没有所有这些。但是使用mongocusor有一个优势。mongocorsor接口扩展了Closeable,从而扩展了autocloseable。
AutoCloseable(在Java 7中引入)使得使用尝试资源的习惯用法成为可能。像这样的东西

try (final MongoCursor cursor = personDocCollection.find(whereClauseCondition).iterator()) {
   ........
 }

10-06 13:05