2.70. SQL


执行 SQL 查询。

2.70.1. 内部内容

有关使用和配置详情,请参阅上述链接。

2.70.2. Maven 协调

在 code.quarkus.redhat.com 上创建一个具有此扩展名的新项目

或者在现有项目中添加协调:

<dependency>
    <groupId>org.apache.camel.quarkus</groupId>
    <artifactId>camel-quarkus-sql</artifactId>
</dependency>

2.70.3. Camel Quarkus 限制

Oracle JDBC 驱动程序带来了一些 GraalVM 原生镜像配置,它们会破坏 Camel Quarkus 和 Quarkus 中的序列化支持。如需了解更多详细信息,请参阅这个 quarkus 问题

由于此问题,聚合存储库 无法在 Oracle db 的原生模式下工作。

2.70.4. 其他 Camel Quarkus 配置

2.70.4.1. 配置数据源

此扩展利用 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

Camel SQL 组件将自动从 registry 解析 DataSource bean。在配置多个数据源时,您可以通过 URI 选项 数据源dataSourceRef 指定在 SQL 端点上使用哪个。如需了解更多详细信息,请参阅 SQL 组件文档。

2.70.4.1.1. 使用 Quarkus Dev Services 进行零配置

在 dev 和 test 模式中,您可以利用 配置自由数据库。Camel SQL 组件将自动配置为使用 DataSource,指向与您选择的 JDBC 驱动程序类型匹配的数据库本地容器化实例。

2.70.4.2. SQL 脚本

当将 sqlsql-stored 端点配置为引用 classpath 中的脚本文件时,请设置以下配置属性,以确保它们以原生模式可用。

quarkus.native.resources.includes = queries.sql, sql/*.sql

2.70.4.3. 以原生模式进行 SQL 聚合存储库

要在原生模式中使用 JdbcAggregationRepository 等 SQL 聚合存储库,您必须启用原生序列化支持

另外,如果您的交换正文是自定义类型,则必须通过注解其带有 @RegisterForReflection (serialization = true) 的类声明来对它们进行序列化。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.