第20章 JoSQL
概要 リンクのコピーリンクがクリップボードにコピーされました!
JoSQL (SQL for Java オブジェクト) 言語を使用すると、Apache Camel で判定式および表現式を評価できます。JoSQL は SQL のようなクエリー構文を使用して、インメモリーの Java オブジェクトに対してデータ抽出やソートを実行できます。しかし、JoSQL はデータベースでは ありません。JoSQL 構文では、各 Java オブジェクトのインスタンスをテーブルの行とみなし、各オブジェクトのメソッドを列とみなして操作します。この構文を使用すると、Java オブジェクトのコレクションからデータを抽出および再設定する強力なステートメントを作成できます。詳細は http://josql.sourceforge.net/ を参照してください。
JoSQL モジュールの追加 リンクのコピーリンクがクリップボードにコピーされました!
ルートで JoSQL を使用するには、例20.1「camel-josql 依存関係の追加」 で示したように、camel-josql
の依存関係をプロジェクトに追加する必要があります。
例20.1 camel-josql 依存関係の追加
静的インポート リンクのコピーリンクがクリップボードにコピーされました!
アプリケーションコードで sql()
static メソッドを使用するには、以下の import ステートメントを Java ソースファイルに追加します。
import static org.apache.camel.builder.sql.SqlBuilder.sql;
import static org.apache.camel.builder.sql.SqlBuilder.sql;
変数 リンクのコピーリンクがクリップボードにコピーされました!
表20.1「JoSQL 変数」 に、JoSQL を使用する際にアクセス可能な組み込み変数の一覧を示します。
名前 | 型 | 説明 |
---|---|---|
|
| 現在のエクスチェンジ |
|
| IN メッセージ |
|
| OUT メッセージ |
プロパティー |
| キーが propertyであるエクスチェンジプロパティー |
header |
| キーが header である IN メッセージヘッダー |
variable |
| キーが variable である変数 |
例 リンクのコピーリンクがクリップボードにコピーされました!
例20.2「JoSQL を使用したルート」 は、JoSQL を使用したルートを示しています。
例20.2 JoSQL を使用したルート