У меня есть следующий код, который работает:
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");
Что будет лучшим / самым простымспособ сохранить эти данные?Есть ли способ поместить карту прямо в базу данных Монго?Или мне пришлось бы зацикливаться на карте?
Данные, которые входят в карту, уже взяты из базы данных примерно так:
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 возвращается в базу данных.
Есть идеи?
Спасибо за любую помощь или предложения!