Hasilkan ObjectId lebih awal, gunakan di sisipan, dan database tidak perlu mengembalikannya kepada Anda.ObjectId tidak menggunakan nomor urut bersama untuk menjadi unik, jadi tidak masalah jika Anda membuatnya sebelum memasukkan atau ambil setelahnya.
public ObjectId createThing() {
ObjectId result = new ObjectId();
BasicDBObject thingToInsert = new BasicDbObject();
thingToInsert.put('_id', result);
//set other fields here
collection.insert(thingToInsert);
return result;
}