第172章 JDBC コンポーネント

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

jdbc コンポーネントを使用すると、SQL クエリー (SELECT) と操作 (INSERT、UPDATE など) がメッセージ本文で送信される JDBC を介してデータベースにアクセスできます。このコンポーネントは、spring-jdbc を使用する SQL コンポーネント コンポーネントとは異なり、標準の JDBC API を使用します。

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

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

このコンポーネントはプロデューサーエンドポイントの定義にのみ使用できます。つまり、from() ステートメントで JDBC コンポーネントを使用することはできません。

トランザクション

camel-jdbc オプションを使用する場合は、トランザクションマネージャーを実装して設定し、Camel ルート定義の resetAutoCommit プロパティーを false に設定する必要があります。

camel-jdbc を使用したトランザクションルートの定義

from("direct:tx")
    .transacted()
    .to("jdbc:test_db?resetAutoCommit=false")
注記

camel-jdbc コンポーネントで使用する場合、transacted=true プロパティーは必要ありません。追加の機能が必要な場合は、camel-sql コンポーネントの使用を検討してください。

172.1. URI 形式

jdbc:dataSourceName[?options]

このコンポーネントはプロデューサーエンドポイントのみをサポートします。

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