如何使用“_id”查询文档Java mongodb驱动程序中的字段? [英] How to query documents using "_id" field in Java mongodb driver?

查看:194
本文介绍了如何使用“_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作为String传递对于此方法,没有匹配的文档。

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"?

推荐答案

使用查询解决它 -

Solved it by using query as-

query.putAll((BSONObject)query);

这篇关于如何使用“_id”查询文档Java mongodb驱动程序中的字段?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆