我想用java programm更新mongodb中的数组内的对象 [英] I want to update object inside array in mongodb with java programm
本文介绍了我想用java programm更新mongodb中的数组内的对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
"cmd" : [
{
"a" : 1
},
{
"b" : 2
},
{
"c" : 3
}
]
}
i need to update object inside a array{"d":4}..
我的尝试:
What I have tried:
<pre>package hellomongo;
import javax.lang.model.element.Element;
import org.bson.Document;
import com.mongodb.BasicDBObject;
import com.mongodb.DBCollection;
import com.mongodb.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
public class Mongoh{
public static void main(String args[]) {
MongoClient mongoClient = new MongoClient("localhost", 27017);
MongoDatabase db = mongoClient.getDatabase("admin");
MongoCollection<Document> coll = db.getCollection("command");
BasicDBObject lurl = new BasicDBObject();
BasicDBObject lurl2 = new BasicDBObject();
BasicDBObject lkey = new BasicDBObject();
for(Element e : links){
DBCollection colls = db.getCollection(e.text());
lurl.put("d", e.attr("4"));
lurl2.put("$addToSet", new BasicDBObject(lurl));
lkey.put("a", e.text());
colls.update(lkey, lurl2);
}
}
}
推荐答案
addToSet,新的BasicDBObject(lurl ));
lkey.put(a,e.text());
colls.update(lkey,lurl2);
}
}
}
addToSet", new BasicDBObject(lurl)); lkey.put("a", e.text()); colls.update(lkey, lurl2); } } }
这篇关于我想用java programm更新mongodb中的数组内的对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文