我正在将我的应用程序迁移到MongoDb 3.0.2。我没有插入,查找和删除的问题。但是,更新问题。特别是eq()
。
在这句话中:
coll.updateOne(eq("_id", id), new Document("$set", new Document("name", name)));
id
变量定义为ObjectId
。 Eclipse给了我一个错误:
方法eq(String,ObjectId)未定义 输入SystemDAO (我的java类)。
我做错了什么?我按照Mongo java驱动程序文档中的示例进行操作。
答案 0 :(得分:7)
您需要从包eq
中导入静态方法com.mongodb.client.model.Filters
。
将您的课程前面的内容添加到其他导入中:
import static com.mongodb.client.model.Filters.*;
在Eclipse中,如果您将鼠标悬停在错误上,它应该快速修复以导入正确的包。但对于静态导入,这并不是一直有效。