如何使用Java mongodb驱动程序查询带有"_id"字段的文档?

19 浏览
0 Comments

如何使用Java mongodb驱动程序查询带有"_id"字段的文档?

我正在尝试通过在"_id"键上进行搜索来在MongoDB中查找文档。我的文档看起来像这样-

{

"_id" : ObjectId("4f693d40e4b04cde19f17205"),

"hostname" : "hostnameGoesHere",

"OSType" : "OSTypeGoesHere"

}

我正在尝试这样搜索该文档-

ObjectId id= new ObjectId("4f693d40e4b04cde19f17205");        
BasicDBObject obj = new BasicDBObject();        
obj.append("_id", id);        
BasicDBObject query = new BasicDBObject();        
query.putAll(query);

但是我得到以下错误-

error: reference to putAll is ambiguous, both method putAll(Map) in BasicBSONObject and method putAll(BSONObject) in BasicBSONObject match
        query.putAll(query);

BasicDBObject的append方法支持(String Key,Value),如果我将"_id"作为字符串传递给该方法,将找不到任何匹配的文档。

所以我的问题是如何传递"_id"?

0