Java 是否需要锁定mongodb中的每个文档?
我是MongoDB的新手。我正在浏览这个链接: 我的问题是: 这项研究的目的是什么Java 是否需要锁定mongodb中的每个文档?,java,mongodb,interface,mongo-java-driver,Java,Mongodb,Interface,Mongo Java Driver,我是MongoDB的新手。我正在浏览这个链接: 我的问题是: 这项研究的目的是什么 iterable.forEach(new Block<Document>() { @Override public void apply(final Document document) { System.out.println(document); } }); iterable.forEach(新块(){ @凌驾 公开作废申请(最终文件){ 系统输出打
iterable.forEach(new Block<Document>() {
@Override
public void apply(final Document document) {
System.out.println(document);
}
});
iterable.forEach(新块(){
@凌驾
公开作废申请(最终文件){
系统输出打印项次(文件);
}
});
有人能解释一下什么是Block
和apply
我只想读取mongodb中的数据。我不想更改其中的数据。代码只是读取餐厅收藏中的所有文档,并在控制台上打印出每个文档。在迭代过程中操作
文档是可选的方法
块
是一个功能接口
(Java接口),允许您将文档
修改为自定义对象(添加/编辑/删除数据,初始化自定义对象等)
因此,Block
只有一个名为apply
的方法,您需要在其中实现文档
操作。在迭代过程中,forEach
自动调用apply
方法
您可以阅读有关功能接口的更多信息:
编辑:
要使用forEach更优雅,您可以执行以下操作:
创建实现块的新类
。因此,对于forEach方法,您可以传递类实例(iterable.forEach(newdocumentimpl())
)
public类DocumentImpl实现块{
公共作废申请(文档arg0){
//在这里做事
}
}
不推荐!不赞成。不要使用MongoDatabase数据库
,而是在与DBObject
接口一起使用db数据库
。因此,一旦使用find
进行查询,就会得到DBCursor
。您可以通过.next()
迭代DBCursor,并获取DBObject
文档
使用更具可读性的Spring数据,并在MongoDB和POJO之间自动映射对象
除了重写apply方法,还有其他方法吗?
public class DocumentImpl implements Block<Document> {
public void apply(Document arg0) {
//Do stuff here
}
}