如何使用“_id"查询文档Java mongodb 驱动程序中的字段? [英] How to query documents using "_id" field in Java mongodb driver?
本文介绍了如何使用“_id"查询文档Java mongodb 驱动程序中的字段?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图通过搜索_id"键在 MongoDB 中查找文档.我的文档看起来像这样-
I am trying to find documents in MongoDB by searching on "_id" key. My document looks like this-
{
"_id" : ObjectId("4f693d40e4b04cde19f17205"),
"hostname" : "hostnameGoesHere",
"OSType" : "OSTypeGoesHere"
}
我正在尝试将这个文档搜索为-
I am trying to search this document as-
ObjectId id= new ObjectId("4f693d40e4b04cde19f17205");
BasicDBObject obj = new BasicDBObject();
obj.append("_id", id);
BasicDBObject query = new BasicDBObject();
query.putAll(query);
但我得到以下错误 -
But I get below error-
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"作为字符串传递给该方法,则不会匹配任何文档.
The append method of BasicDBObject supports (String Key, Value) and if I pass "_id" as String to this method, no documents are matched.
所以我的问题是如何传递_id"?
So my question is how do I pass "_id"?
推荐答案
通过使用 query as- 解决了它-
Solved it by using query as-
query.putAll((BSONObject)query);
这篇关于如何使用“_id"查询文档Java mongodb 驱动程序中的字段?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文