第326章 SQL Stored Procedure コンポーネント

Camel バージョン 2.17 以降で利用可能

sql-stored: コンポーネントを使用すると、JDBC Stored Procedure クエリーを使用してデータベースを操作できます。このコンポーネントは SQL コンポーネント の拡張機能ですが、ストアドプロシージャーの呼び出しに特化しています。

このコンポーネントは、実際の SQL 処理のために舞台裏で spring-jdbc を使用します。

Maven ユーザーは、このコンポーネントの pom.xml に以下の依存関係を追加する必要があります。

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-sql</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>

326.1. URI 形式

SQL コンポーネントは、次のエンドポイント URI 表記を使用します。

sql-stored:template[?options]

ここで、template はストアドプロシージャーテンプレートで、ストアドプロシージャーの名前と IN、INOUT、および OUT 引数を宣言します。 

次のようなファイルシステムまたはクラスパス上の外部ファイルでテンプレートを参照することもできます。

sql-stored:classpath:sql/myprocedure.sql[?options]

sql/myprocedure.sql は、次のように、テンプレートを含むクラスパス内のプレーンテキストファイルです。

SUBNUMBERS(
  INTEGER ${headers.num1},
  INTEGER ${headers.num2},
  INOUT INTEGER ${headers.num3} out1,
  OUT INTEGER out2
)

URI には、?option=value&option=value&…​ の形式でクエリーオプションを追加できます。