我想从mongo子文档中找到特定的字段值,但是它检索全数据或空值。我正在使用mongo 3.0.1驱动程序。 mongo特定驱动程序的语法有没有问题?
JSON数据是:如何从mongo中的子文档获取特定值
{
"Demo": {
"Demo Data": {
"Building": {
"A": 1,
"B": 2,
"C": 3,
"D": 4,
},
"Mode": "Building"
}
}
}
的代码如下:
DBCollection collection = db.getCollection("demo");
BasicDBObject field = new BasicDBObject();
BasicDBObject document = new BasicDBObject();
field1.put("_id", 0);
field1.put("Demo", 1);
DBCursor cursor = collection.find(document, field);
BasicDBObject object = new BasicDBObject();
BasicDBObject Mode = new BasicDBObject();
while (cursor.hasNext()) {
object = (BasicDBObject) cursor.next();
Mode.put("Mode", object.get(Mode));
System.out.println("Mode value is"+Mode);
}
,但使用上面的代码中,输出作为表示:
Mode value is {"Mode":null}
要求是获得下面的输出: {"Mode": "Building"}
。
请指明条件出错的地方。谢谢你的帮助。
正在使用哪个版本的Mongo Java驱动程序? –
@ CS_noob:我正在使用版本mongo-3.0.1 java驱动 –