35.7.2. 作成/更新の操作


35.7.2.1. insert

IN メッセージボディーから取得した MongoDB コレクションに新しいオブジェクトを挿入します。型変換は、ドキュメント または リスト に変換しようとし ます
単一の挿入と複数の挿入の 2 つのモードがサポートされます。複数の挿入の場合、エンドポイントは、または - Document に変換できる限り、任意のタイプのオブジェクトの List、Array、または Collections を想定します。以下に例を示します。

from("direct:insert")
    .to("mongodb:myDb?database=flights&collection=tickets&operation=insert");

操作は WriteResult を返し、WriteConcern または invokeGetLastError オプションの値によっては、getLastError () はすでに呼び出されます。書き込み操作の最終結果にアクセスする場合は、WriteResultgetLastError ()または getCachedLastError () を呼び出して CommandResult を取得する必要があります。次に、CommandResult. ok ()、CommandResult. getErrorMessage ()、および/または CommandResult.getException ( )を呼び出すことで結果を確認できます。

新規オブジェクトの _id はコレクションで一意である必要があることに注意してください。値を指定しないと、MongoDB が自動的に生成されます。しかし、それを指定して一意でない場合は、挿入操作は失敗します(Camel が通知する場合は、callGetLastError を有効にするか、書き込み結果を待つ WriteConcern を設定する必要があります)。

これはコンポーネントの制限ではありませんが、スループットを高めるために MongoDB でどのように機能するかです。カスタムの _id を使用している場合は、アプリケーションレベルが一意であることを確認する必要があります(これはグッドプラクティスでもあります)。

挿入されたレコードの OID は、CamelMongoOid キー下のメッセージヘッダー(MongoDbConstants.OID 定数)に保存されます。保存される値は、単一の挿入の場合は org.bson.types .ObjectId、複数のレコードが挿入されている場合は java.util.List<org.bson.types.ObjectId > です。

MongoDB Java Driver 3.x では、insertOne および insertMany 操作は void を返します。Camel insert 操作は挿入された Document または List of Documents を返します。各ドキュメントは、必要に応じて新しい OID によって更新されることに注意してください。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る