通过Java向Mongo集合中的每个文档添加新字段
如何向现有集合中的每个文档添加新字段 这就是我迄今为止所尝试的通过Java向Mongo集合中的每个文档添加新字段,java,json,spring,mongodb,mongo-java-driver,Java,Json,Spring,Mongodb,Mongo Java Driver,如何向现有集合中的每个文档添加新字段 这就是我迄今为止所尝试的 MongoClient mongo = new MongoClient("localhost", 27017); DB db = mongo.getDB("myDB"); DBCollection collection = db.getCollection("myCollection"); DBObject test = new BasicDBObject(); DBObject add = new BasicDBObject();
MongoClient mongo = new MongoClient("localhost", 27017);
DB db = mongo.getDB("myDB");
DBCollection collection = db.getCollection("myCollection");
DBObject test = new BasicDBObject();
DBObject add = new BasicDBObject();
add.put("xxx", "newField");
collection.update(add, test);
您应该使用“更新多个”:
DBObject queryAll = new BasicDBObject();
DBObject newValue = new BasicDBObject("xxx", "newField");
DBObject update = new BasicDBObject("$set", newValue);
collection.updateMulti(queryAll, update);
使用了您的代码,但新字段并没有附加到所有JSON中,它是否附加到某些文档中?或者根本没有?代码似乎是正确的,但它根本没有将字段追加到jsonDoes集合。find返回任何文档?如果我在这个上下文中使用for循环,所有内容都将被最后一个值覆盖。你认为有没有办法一个一个地更新它们?