MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Групово upsert с драйвер MongoDB Java 3.0

Все още можете да използвате цялата функционалност, просто BulkWrites вече има различен синтаксис:

    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);

Така че използвате UpdateOneModel (или за много, ако искате) и задайте UpdateOptions като трети аргумент на конструктора.

Отнема известно време за свикване, но всъщност това е просто изграждане на „Списъци“ със същия синтаксис като другаде. Предполагам, че това е основната причина за промяната.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Използване на $graphLookup за преминаване на вложена структура от данни в MongoDB

  2. Как мога да направя условно търсене в pymongo?

  3. Намерете отделни стойности, групирани по друго поле mongodb

  4. Заявка за MongoDB с помощта на „ObjectId“

  5. Mongoose изберете полета, за да се върнете от findOneAndUpdate