Java 如何根据MongoDB中的唯一ID获取多个属性?
我想从中检索一个仅包含ID和性别的列表,如Java 如何根据MongoDB中的唯一ID获取多个属性?,java,mongodb,Java,Mongodb,我想从中检索一个仅包含ID和性别的列表,如list { "_id": 123 , "gender": m, "occupation": athlete }, { "_id": 456 , "gender": f, "occupation": basketball }, ... 尝试使用以下命令,但无效。正在将查询作为新的BDObject启动性别:1 dbcollection.distinct("_id", query) “\u id”是唯一的,因此无需对其调用不同的函数 如果您想获得所有带有
list
{ "_id": 123 , "gender": m, "occupation": athlete },
{ "_id": 456 , "gender": f, "occupation": basketball },
...
尝试使用以下命令,但无效。正在将查询作为新的BDObject启动性别:1
dbcollection.distinct("_id", query)
“\u id”是唯一的,因此无需对其调用不同的函数
如果您想获得所有带有性别和_id的文档,可以通过以下方式实现
BasicDBObject query = new BasicDBObject();
BasicDBObject selectGenderOnly = new BasicDBObject();
selectGenderOnly.put("gender", 1);
DBCursor cursor = dbcollection.find(query, selectGenderOnly); // db.collection.find({}, {"gender": 1}) & _id field included by default in result set
while (cursor.hasNext()) {
BasicDBObject obj = (BasicDBObject) cursor.next();
// use obj
// ...
}
它将提供如下文件
{"_id":123 , "gender": m}
{"_id":456 , "gender": f}
如何将其返回为DBObject?已更新…,find方法返回游标,将其收集为BasicDBObject并用于进一步操作如何将obj返回到循环外部?初始化循环外部的数组并将obj添加到循环中的该数组中。。返回该数组
{"_id":123 , "gender": m}
{"_id":456 , "gender": f}