非常に大きなコレクションがあり、それを選択するとします
MongoCursor<MyClass> answer = myCollection.find().as(MyClass.class);
Jongo/Mongo は、最初の呼び出しでコレクション全体をロードしますか、それとも反復処理中にデータを段階的にロードしanswer
ますか?
Jongo'sMongoCursor
はボンゴの下で Mongo's レギュラーを使用しDBCursor
ています。DBCursor
要素を遅延して読み込みます (通常、すべてのカーソルが行うように) 。つまり、コレクション全体がメモリにロードされるのではなく、カーソルを繰り返し処理している間に遅延ロードされます。
Jongo からの関連ソースで、cursor
はDBCursor
.
public E next() {
if (!hasNext())
throw new NoSuchElementException();
DBObject dbObject = cursor.next();
return resultHandler.map(dbObject);
}