如何获取一个文件MongoDB Java的_id

时间:2014-03-04 12:05:23

标签: java mongodb

我正在使用MongoDBJava-driver

我需要将文档插入MongoDB并检索此文档的_id。 insert方法返回[WriteResult][1]

我不知道如何使用WriteResult对象来检索_id,因为我尝试这样做:

public void insertDocument(BasicDBObject fact){
    DBCollection coll = this.getCollection("facts");
    WriteResult result = coll.insert(fact);
    String id = (String) result.getField("_id");
    System.out.println("--------------------------->"+id);

}

我在String中有一个空println

我的问题是我如何获得刚刚插入数据库的整个对象(带有_id)。

谢谢!

1 个答案:

答案 0 :(得分:4)

插入BasicDBObject实例后,MongoDB驱动程序会根据设置_id字段的值来修改实例(如果尚未指定)。

因此,您仍然可以使用fact对象并从那里获取_id

 System.out.println(fact.get("_id"));