181.2. エンドポイントからの消費

JPA コンシューマーエンドポイントからメッセージを消費すると、データベース内のエンティティー Bean が削除 (または更新) されます。これにより、データベーステーブルを論理キューとして使用できます。コンシューマーはキューからメッセージを取得し、それらを削除/更新してキューから論理的に削除します。

エンティティー Bean が処理されたとき (およびルーティングが完了したとき) にエンティティー Bean を削除したくない場合は、URI で consumeDelete=false を指定できます。これにより、ポーリングごとにエンティティーが処理されます。

エンティティーに何らかの更新を実行して、処理済みとしてマークする (今後のクエリーから除外するなど) 場合は、@Consumed で Bean にアノテーションを付けることができます。処理済み (およびルーティングが完了したとき)。

Camel 2.13 以降では、エンティティー Bean が処理される前 (ルーティング前) に呼び出される @PreConsumed を使用できます。

大量 (100K+) の行を消費していて OutOfMemory の問題が発生している場合は、maximumResults を適切な値に設定する必要があります。