Tôi có đoạn code dưới đây mà hoạt động:Cơ sở dữ liệu Mongo lưu dữ liệu từ Map
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);
}
Tuy nhiên tôi có dữ liệu cho Bộ A và B trong một bản đồ như:
Map<Object,Object> map = new HashMap<Object,Object>();
map.put("1", "Department A");
map.put("2", "Department B");
gì sẽ là tốt nhất/cách dễ nhất để lưu dữ liệu này là gì? Có cách nào để đưa bản đồ thẳng vào DB mongo không? Hay tôi phải lặp lại bản đồ?
Các dữ liệu mà đi vào bản đồ đã được lấy từ cơ sở dữ liệu như vậy:
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);
có thể còn tốt hơn là tôi chỉ có thể đặt DBCursor lại được đồ vật vào cơ sở dữ liệu.
Bất kỳ ý tưởng nào?
Cảm ơn bạn đã được trợ giúp hoặc gợi ý!