MongoCollection的更新<documnet>

时间:2016-12-13 20:42:19

标签: mongodb

我正在尝试更新文档,但我无法执行此操作。 我尝试使用update()以及updateOne()方法。没有一个工作。

public boolean updateDocument(String docId, String JSONString) {
     try{
         MongoCollection<Document> collection = getCollection("abc");
         DBObject queryObject = (DBObject)(collection.find(eq("_id","docId")).first()); 
         if(queryObject==null)
             return false;
         else {
             DBObject updateObject = (DBObject)JSON.parse(JSONString);
             collection.update(queryObject, updateObject);
             return true;
         }
     }catch (Exception e) {
         System.out.println(e.getMessage());
         return false;
     }
}

错误是这样的:方法更新(dbObject,dbObject)未定义类型MongoCollection 我可以使用updateOne适用于Bson参数但我需要用于DbObjects .. 任何人都可以建议任何解决方案吗?

1 个答案:

答案 0 :(得分:0)

我试过这个并且工作了......我需要在我用这个指定的整个类中使用MongoCollection类型beacuse。

 public boolean updateDocument(String docId, String JSONString) {
     try{
         MongoCollection<Document> collection = getCollection("123");
         Document queryObject = collection.find(eq("_id",docId)).first();                //finding the document then converting to DBObject type
         if(queryObject==null)
             return false;
         else {
             Document updatedoc = new Document();
             updatedoc = Document.parse(JSONString);
             collection.updateOne(queryObject,updatedoc );
             return true;
         }
     }catch (Exception e) {
         System.out.println(e.getMessage());
         return false;
     }
}