MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Insertion en masse avec le pilote MongoDB Java 3.0

Vous pouvez toujours utiliser toutes les fonctionnalités, c'est juste que BulkWrites a maintenant une syntaxe différente :

    MongoCollection<Document> collection = db.getCollection("sample");

    List<WriteModel<Document>> updates = Arrays.<WriteModel<Document>>asList(
        new UpdateOneModel<Document>(
                new Document(),                   // find part
                new Document("$set",1),           // update part
                new UpdateOptions().upsert(true)  // options like upsert
        )
    );

    BulkWriteResult bulkWriteResult = collection.bulkWrite(updates);

Donc, vous utilisez le UpdateOneModel (ou pour plusieurs si vous le souhaitez) et définissez le UpdateOptions comme troisième argument du constructeur.

Il faut un certain temps pour s'y habituer, mais il s'agit essentiellement de créer des "listes" avec la même syntaxe qu'ailleurs. Je suppose que c'est la raison principale du changement.