mongo-java-driver3.3.0へのアップグレード中にfindOneの実装が変更されました

ナマン

以前はを使用mongo-java-driver 3.0.4していましたが、コードの特定のブロックにこの実装があります-

DBCollection docCollection = mongoClient.getDB(dbName).getCollection(collectionName);

Map<String, Object> docMap = doc.toMap(); // where doc is the CustomDocument

DBObject currentObj = docCollection.findOne(new QueryBuilder().put("id").is(doc.getId()).get());
if(currentObj == null) {
   docCollection.insert(new BasicDBObject(docMap));
} else {
   docCollection.update(currentObj, new BasicDBObject(docMap));
}

私が今達成しようとしているのはmongo-java-driver 3.3.0、非推奨のクラスとメソッドを取り除くためにコードを使用して更新することです。上記のコードに対応して私が試したのは-

MongoCollection<CustomDocument> docCollections = mongoClient.getDatabase(dbName).getCollection(collectionName, CustomDocument.class);

Bson filter = Filters.eq("id", doc.getId()); // where doc is the CustomDocument
FindIterable<Document> documentList = docCollections.find(filter);
if (documentList == null) {
    docCollections.insertOne(doc);
} else {
    docCollections.findOneAndUpdate(filter, new BasicDBObject(docMap));
}

私がまだ不足しているのはfindOne、コード内のコレクションから実装insertと、updateそれに応じて実行されるチェックベースのアクションです。

これに対する解決策/提案は大歓迎です。

ナマン

の実装で遊んでいる解決策を見つけましたmongo-java-driver 3.3.0

実行する簡単な方法はfindOne次のとおりです-

MongoCollection<CustomDocument> docCollections = mongoClient.getDatabase(dbName).getCollection(collectionName, CustomDocument.class);
CustomDocument firstDocument = docCollections.find(filter).first(); //first for findOne

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

mongo3のアップグレード後にDatabaseException 'がdb.collectionのクエリに対して許可されていません'(コード= 13)

分類Dev

Vue 3にアップグレードすると、画像の高さが0にリセットされます

分類Dev

mongo-java-driverを使用したフィールドの最大値

分類Dev

TFS 2015v3にアップグレードした後の単体テストの実行中にエラーが発生しました

分類Dev

IOS11へのアップデート後にIOSエミュレータでエラーが実行されました-Ionic3

分類Dev

Mongo $ lookupネストされた配列は、mongooseを使用して3レベルの深さになります

分類Dev

TFS 2012 Update3のアップグレード-バックログにバグ作業項目の種類が表示されなくなりました

分類Dev

urlmappingsの変更-grails2から3へのアップグレード

分類Dev

Python 2/3のアップグレード後、djangoテストの実行中にエラーが発生しました。unittest.loader._FailedTest

分類Dev

swift 3にアップグレードした後、UITableViewが壊れました

分類Dev

ポリマー3のアップグレード-選択した鉄のページはDOMにありますが、表示されません

分類Dev

mongo-java-driver 3.12のMongoCollection.deleteManyでWriteConcernを使用します

分類Dev

15.04にアップグレードすると、AmazonS3へのdejadupバックアップが中断されますか?

分類Dev

15.04にアップグレードすると、AmazonS3へのdejadupバックアップが中断されますか?

分類Dev

axonIQ3から4までのmongoを使用したSpringBoot

分類Dev

Nexus 3のアップグレードでMavenのデプロイが壊れました:デプロイ

分類Dev

要素が1)整数、2)別のネストされたHashMap、または3)空のHashMapのいずれかである、ネストされたHashMapのJavaイテレータを実装します。

分類Dev

2GのRAMがあり、6Gにアップグレードしたところ、3Gしか表示されません

分類Dev

GooglePlayへのアップロード中にUnity3dAPKエラーが発生しました

分類Dev

mongo-java-driver maven依存関係を追加すると、SpringBootがmongoに接続しようとします

分類Dev

mongo-java-driverにeqが存在しないのはなぜですか?

分類Dev

v3にアップグレードした後、Ionic3コンポーネントのJavaScriptが更新されない

分類Dev

Databricksで実行されているS3へのPySparkのアップロードが非常に遅い

分類Dev

光沢のあるブートストラップ3にアップグレードすると、HTMLコードが壊れました

分類Dev

Javaを使用したS3へのAWSファイルのアップロード

分類Dev

s3への画像のアップロードはレンダリングされません

分類Dev

mongo-java-driver-2.9.3.jarにはMongoClientが含まれていません

分類Dev

角度ルーティング-ネストされたルーターアウトレット(1つのメイン+ 2つの名前付きアウトレット)-3番目のルーターアウトレットへの移動中にエラーが発生しました

分類Dev

PipがアップグレードされたPythonバージョンにリンクしていません。パッケージpython3-pipは利用できませんが、別のパッケージによって参照されています

Related 関連記事

  1. 1

    mongo3のアップグレード後にDatabaseException 'がdb.collectionのクエリに対して許可されていません'(コード= 13)

  2. 2

    Vue 3にアップグレードすると、画像の高さが0にリセットされます

  3. 3

    mongo-java-driverを使用したフィールドの最大値

  4. 4

    TFS 2015v3にアップグレードした後の単体テストの実行中にエラーが発生しました

  5. 5

    IOS11へのアップデート後にIOSエミュレータでエラーが実行されました-Ionic3

  6. 6

    Mongo $ lookupネストされた配列は、mongooseを使用して3レベルの深さになります

  7. 7

    TFS 2012 Update3のアップグレード-バックログにバグ作業項目の種類が表示されなくなりました

  8. 8

    urlmappingsの変更-grails2から3へのアップグレード

  9. 9

    Python 2/3のアップグレード後、djangoテストの実行中にエラーが発生しました。unittest.loader._FailedTest

  10. 10

    swift 3にアップグレードした後、UITableViewが壊れました

  11. 11

    ポリマー3のアップグレード-選択した鉄のページはDOMにありますが、表示されません

  12. 12

    mongo-java-driver 3.12のMongoCollection.deleteManyでWriteConcernを使用します

  13. 13

    15.04にアップグレードすると、AmazonS3へのdejadupバックアップが中断されますか?

  14. 14

    15.04にアップグレードすると、AmazonS3へのdejadupバックアップが中断されますか?

  15. 15

    axonIQ3から4までのmongoを使用したSpringBoot

  16. 16

    Nexus 3のアップグレードでMavenのデプロイが壊れました:デプロイ

  17. 17

    要素が1)整数、2)別のネストされたHashMap、または3)空のHashMapのいずれかである、ネストされたHashMapのJavaイテレータを実装します。

  18. 18

    2GのRAMがあり、6Gにアップグレードしたところ、3Gしか表示されません

  19. 19

    GooglePlayへのアップロード中にUnity3dAPKエラーが発生しました

  20. 20

    mongo-java-driver maven依存関係を追加すると、SpringBootがmongoに接続しようとします

  21. 21

    mongo-java-driverにeqが存在しないのはなぜですか?

  22. 22

    v3にアップグレードした後、Ionic3コンポーネントのJavaScriptが更新されない

  23. 23

    Databricksで実行されているS3へのPySparkのアップロードが非常に遅い

  24. 24

    光沢のあるブートストラップ3にアップグレードすると、HTMLコードが壊れました

  25. 25

    Javaを使用したS3へのAWSファイルのアップロード

  26. 26

    s3への画像のアップロードはレンダリングされません

  27. 27

    mongo-java-driver-2.9.3.jarにはMongoClientが含まれていません

  28. 28

    角度ルーティング-ネストされたルーターアウトレット(1つのメイン+ 2つの名前付きアウトレット)-3番目のルーターアウトレットへの移動中にエラーが発生しました

  29. 29

    PipがアップグレードされたPythonバージョンにリンクしていません。パッケージpython3-pipは利用できませんが、別のパッケージによって参照されています

ホットタグ

アーカイブ