2.74. SQL
SQL クエリーを実行します。
2.74.1. 含まれるもの リンクのコピーリンクがクリップボードにコピーされました!
-
SQL コンポーネント、URI 構文:
sql:query
-
SQL Stored Procedure コンポーネント、URI 構文:
sql-stored:template
使用方法と設定の詳細については、上記リンクを参照してください。
2.74.2. Maven コーディネート リンクのコピーリンクがクリップボードにコピーされました!
code.quarkus.redhat.com でこのエクステンションを使用して新しいプロジェクトの作成
または、既存のプロジェクトに座標を追加します。
<dependency> <groupId>org.apache.camel.quarkus</groupId> <artifactId>camel-quarkus-sql</artifactId> </dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-sql</artifactId>
</dependency>
2.74.3. 追加の Camel Quarkus 設定 リンクのコピーリンクがクリップボードにコピーされました!
2.74.3.1. データソースの設定 リンクのコピーリンクがクリップボードにコピーされました!
このエクステンションは、DataSource
のサポートに Quarkus Agroal を活用します。DataSource
の設定は、設定プロパティーを介して実行できます。
quarkus.datasource.db-kind=postgresql quarkus.datasource.username=your-username quarkus.datasource.password=your-password quarkus.datasource.jdbc.url=jdbc:postgresql://localhost:5432/your-database quarkus.datasource.jdbc.max-size=16
quarkus.datasource.db-kind=postgresql
quarkus.datasource.username=your-username
quarkus.datasource.password=your-password
quarkus.datasource.jdbc.url=jdbc:postgresql://localhost:5432/your-database
quarkus.datasource.jdbc.max-size=16
Camel SQL コンポーネントは、レジストリーから DataSource
Bean を自動的に解決します。複数のデータソースを設定する場合、URI オプション datasource
または dataSourceRef
を使用して、SQL エンドポイントで使用するデータソースを指定できます。詳細については、SQL コンポーネントのドキュメントを参照してください。
2.74.3.1.1. Quarkus Dev Services によるゼロ設定 リンクのコピーリンクがクリップボードにコピーされました!
開発モードとテストモードでは、Configuration Free Databases を利用できます。Camel SQL コンポーネントは、選択した JDBC ドライバータイプに一致するデータベースのローカルコンテナー化インスタンスを指す DataSource
を使用するように自動的に設定されます。
2.74.3.2. SQL スクリプト リンクのコピーリンクがクリップボードにコピーされました!
クラスパスからスクリプトファイルを参照するために sql
または sql-stored
エンドポイントを設定する場合は、以下の設定プロパティーを設定して、それらがネイティブモードで利用できるようにします。
quarkus.native.resources.includes = queries.sql, sql/*.sql
quarkus.native.resources.includes = queries.sql, sql/*.sql
2.74.3.3. ネイティブモードでの SQL 集約リポジトリー リンクのコピーリンクがクリップボードにコピーされました!
ネイティブモードで JdbcAggregationRepository
などの SQL 集約リポジトリーを使用するには、ネイティブのシリアライズサポートを有効化 する必要があります。
さらに、エクスチェンジボディがカスタムタイプである場合、クラス宣言に @RegisterForReflection(serialization = true)
のアノテーションを付けてシリアライズ用に登録する必要があります。