我需要两个来为mongo db中的现有数据添加新项目。
这是mongo db我有以下数据。
{
"_id" : ObjectId("53ce11e7d0881d32d9fa935f"),
"name" : "massive riots",
"lastFeachedTime" : "Jul 15, 2014 12:55:27 PM"
}
在这里,我必须根据名称找到数据,我必须再添加两个项目。
这是我的代码。
DBObject queryObject = new BasicDBObject().append("name", keyword);
if (null == newFetchTime) {
}
DBObject updateObject = new BasicDBObject();
updateObject.put("nextPageToken", nextPageToken);
updateObject.put("prevPageToken", prevPageToken);
Utils utils = new Utils();
DBCollection collection = utils.getStaging().getCollection("test");
collection.update(queryObject, updateObject, true, false);
但是我确实更新了现有值,删除了新数据。
任何人都可以告诉我如何将项目添加到mongo db中的现有数据。
答案 0 :(得分:1)
您希望更新中包含$set
运算符。这允许更改指定的字段而不影响文档中的任何现有字段,除非存在指定的字段,在这种情况下该字段将被覆盖:
DBObject update = new BasicDBObject(
"$set", new BasicDBObject()
.append("nextPageToken",nextPageToken)
.append("prevPageToken",prevPageToken)
);
在shell中使用等效的东西:
{ "$set" : { "nextPageToken" : nextPageToken , "prevPageToken" : prevPageToken }}