Đối với vấn đề đầu tiên của bạn MongoDB có nâng cấp vậy
db.collection.update(
{query for id},
{document},
{upsert: true}
)
hoặc trong trình điều khiển Java
yourCollection.update(searchObject, modifiedObject, true, false);
Nếu bạn muốn đặt ID tùy chỉnh, bạn chỉ cần đặt _id
nhập thủ công, tức là
yourBasicDBObject.put("_id",yourCustomId)
bạn chỉ cần đảm bảo rằng nó là duy nhất cho mỗi tài liệu.
Bạn cũng sẽ cần đặt _id
trong modifiedObject
của bạn nếu không, một cái mới sẽ được tạo.
Đối với hoạt động hàng loạt , chỉ cần đặt ID tùy chỉnh cho từng tài liệu bằng cách cung cấp _id
key cũng sẽ hoạt động.