1.4. Starter 配置


清除并可访问的配置是任何应用程序的重要部分。Camel 启动器完全支持 Spring Boot 的外部配置机制。您还可以通过 Spring Beans 配置它们,以获取更复杂的用例。

1.4.1. 使用外部配置

在内部,每个 启动程序 都通过 Spring Boot 的 ConfigurationProperties 配置。每个配置参数都可以 以各种方式 设置(application.[properties|json|yaml] 文件、命令行参数、环境变量等。参数的格式为 camel.[component|language|dataformat].[name].[parameter]

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

camel.component.paho-mqtt5.broker-url=tcp://localhost:61616

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

camel.dataformat.csv.delimiter=;

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

您可以使用 sVirt bean:name 在 Registry 中引用 Bean

camel.component.jms.transactionManager=#bean:myjtaTransactionManager

Bean 通常以 Java 为单位创建:

@Bean("myjtaTransactionManager")
public JmsTransactionManager myjtaTransactionManager(PooledConnectionFactory pool) {
    JmsTransactionManager manager = new JmsTransactionManager(pool);
    manager.setDefaultTimeout(45);
    return manager;
}

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

1.4.2. 使用 Beans

也可以通过 Spring Beans 创建和配置启动程序。在创建入门程序之前,Camel 将首先在 Registry 中查找它(如果已存在)。例如,配置 Kafka 组件:

@Bean("kafka")
public KafkaComponent kafka(KafkaConfiguration kafkaconfiguration){
    return ComponentsBuilderFactory.kafka()
                        .brokers("{{kafka.host}}:{{kafka.port}}")
                        .build();
}

Bean 名称必须与您要配置的组件、数据格式或语言相同。如果没有在注解中指定 Bean 名称,它将设置为方法名称。

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

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.