【发布时间】:2011-10-12 03:47:21
【问题描述】:
我有以下有效的代码:
if (aDBCursor.hasNext()) {
DBObject aDbObject = aDBCursor.next();
aDbObject.put("title", "Test Title");
ArrayList<DBObject> department = new ArrayList<DBObject>();
DBObject nested1 = new BasicDBObject();
nested1.put("name", "Department A");
nested1.put("id", 1);
department.add(nested1);
DBObject nested2 = new BasicDBObject();
nested2.put("name", "Department B");
nested2.put("id", 2);
department.add(nested2);
aDbObject.put("department", department);
collection.save(aDbObject);
}
但是,我在如下地图中有 A 部门和 B 部门的数据:
Map<Object,Object> map = new HashMap<Object,Object>();
map.put("1", "Department A");
map.put("2", "Department B");
保存这些数据最好/最简单的方法是什么?有没有办法将地图直接放入 mongo DB?还是我必须在地图上循环?
进入地图的数据已经从数据库中获取,如下所示:
String[] values = req.getParameterValues("departments");
Map<Object,Object> map = new HashMap<Object,Object>();
DBCollection collection = database.getCollection("Departments");
BasicDBObject query = new BasicDBObject();
query.put("id", new BasicDBObject("$in", values));
DBCursor cursor = collection.find(query);
如果我可以将 DBCursor 对象放回数据库,那就更好了。
有什么想法吗?
感谢您的任何帮助或建议!
【问题讨论】:
标签: java mongodb map mongo-java