我正在尝试使用 _id 字段获取单个记录,这是我的代码
BasicDBObject query = new BasicDBObject("_id","52a6a2cc05e1c80fd5e9295c");
DBCursor cursor = blogTable.find(query);
while (cursor.hasNext())
{
System.out.println("got u");
dataText.setText((cursor.next().get("content:encoded")).toString());
}
我只是没有得到任何数据,而且我很确定 id 存在 .请帮忙
最佳答案
我猜测您调用的字符串“52a6a2cc05e1c80fd5e9295c”实际上是 MongoDB 中的一个 ObjectID。如果是这种情况,您的查找是...
BasicDBObject query = new BasicDBObject();
query.put("_id", new ObjectId("52a6a2cc05e1c80fd5e9295c"));
DBObject dbo = blogTable.findOne(query);
if ( dbo != null ) {
System.out.println( "got u " + dbo );
} else {
System.out.println( "not found" );
}
您需要了解 MongoDB 中事物的类型。
关于java - 使用 _id 字段在 MONGODB 驱动程序 java 中查找单行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20502955/