MongoDB的Java驱动程序:mongojack,通过子文档ID查询

问题描述:

谁能帮我在使用mongojack Java驱动程序MongoDB的Java驱动程序:mongojack,通过子文档ID查询

db.parentdocs.find有关MongoDB的子文档编写相当于查询条件({ “subdoc._id”:物件( “542d916a18ee9cfa2daeae15”)})

这里subdoc是parentdoc文档中的一个子文档。我能够使用其他属性查询,但不使用像

BasicDBObject query = new BasicDBObject(); query.put(“subdoc.name”:“mysubdoc”);我需要编写上面查找查询(db.parentdocs.find({“subdoc._id”:ObjectId(“542d916a18ee9cfa2daeae15”)}))的Java等价物。

+0

任何人都可以帮我解决这个问题吗? – 2014-10-11 10:51:04

ObjectId是MongoDB驱动程序中的一种特殊类型(org.bson.types.ObjectId);因此,您需要将其添加到您的查询为:

BasicDBObject query = new BasicDBObject(); 
query.put("subdoc._id", new ObjectId("542d916a18ee9cfa2daeae15"));