3.4. Starter 配置


清除并可访问的配置是任何应用程序的关键部分。Camel Starters 完全支持 Spring Boot 的外部配置机制。您还可以通过 Spring Beans 配置它们,以了解更复杂的用例。

3.4.1. 使用外部配置

在内部,每个 初学者 都通过 Spring Boot 的配置 属性进行配置。每个配置参数都 可以以不同的方式 设置(application.[properties|json|yaml] 文件、命令行参数、环境变量等)。参数的格式是 camel.[component|language|dataformat].[name].[parameter]

例如,要配置 MQTT5 代理的 URL,您可以设置:

camel.component.paho-mqtt5.broker-url=tcp://localhost:61616
Copy to Clipboard Toggle word wrap

或者要配置 CSV 数据格式的 delimeter 为分号 (;),您可以设置:

camel.dataformat.csv.delimiter=;
Copy to Clipboard Toggle word wrap

在将属性设置为所需类型时,Camel 将使用 Type Converter 机制。

您可以使用 #bean:name 来引用 Registry 中的 Bean:

camel.component.jms.transactionManager=#bean:myjtaTransactionManager
Copy to Clipboard Toggle word wrap

Bean 通常以 Java 创建:

@Bean("myjtaTransactionManager")
public JmsTransactionManager myjtaTransactionManager(PooledConnectionFactory pool) {
    JmsTransactionManager manager = new JmsTransactionManager(pool);
    manager.setDefaultTimeout(45);
    return manager;
}
Copy to Clipboard Toggle word wrap

Bean 也可以 在配置文件中 创建,但不建议在复杂用例中使用它。

3.4.2. 使用 Beans

也可以通过 Spring Beans 创建并配置启动器。在创建初学者之前,Camel 将首先按其名称在 Registry 中查找它(如果已存在)。例如,要配置 Kafka 组件:

@Bean("kafka")
public KafkaComponent kafka(KafkaConfiguration kafkaconfiguration){
    return ComponentsBuilderFactory.kafka()
                        .brokers("{{kafka.host}}:{{kafka.port}}")
                        .build();
}
Copy to Clipboard Toggle word wrap

Bean 名称必须等于您要配置的组件、Dataformat 或 Language。如果未在注解中指定 Bean 名称,它将设置为方法名称。

典型的 Camel Spring Boot 项目将使用外部配置和 Bean 的组合来配置应用程序。有关如何配置 Camel Spring Boot 项目的更多信息,请参阅示例 存储库

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat