sql >> データベース >  >> NoSQL >> MongoDB

MongoDBJava3.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 コンストラクターの3番目の引数として。

    慣れるまでには少し時間がかかりますが、基本的には他の場所と同じ構文で「リスト」を作成するだけです。それが変更の主な理由だと思います。



    1. docker-compose:コンテナ間の接続は拒否されましたが、ホストからサービスにアクセスできます

    2. マングースで条件付きクエリを作成するにはどうすればよいですか?

    3. mongodb接続プール

    4. 存在する場合は多数を更新し、存在しない場合は、存在しないLeadIdごとに新しいドキュメントを作成します