第 3 章 定义 Camel 路由


Quarkus 的 Camel 扩展支持 Java DSL 语言来定义 Camel 路由。

3.1. Java DSL

扩展 org.apache.camel.builder.RouteBuilder 并且使用 fluent builder 方法,可用最常用的方法来定义 Camel 路由。以下是使用计时器组件的路由的简单示例:

import org.apache.camel.builder.RouteBuilder;

public class TimerRoute extends RouteBuilder {

    @Override
    public void configure() throws Exception {
        from("timer:foo?period=1000")
                .log("Hello World");
    }
}

3.1.1. endpoint DSL

自 Camel 3.0 起,您也可以使用流畅的构建器定义 Camel 端点。以下是与前一示例等效的:

import org.apache.camel.builder.RouteBuilder;
import static org.apache.camel.builder.endpoint.StaticEndpointBuilders.timer;

public class TimerRoute extends RouteBuilder {

    @Override
    public void configure() throws Exception {
        from(timer("foo").period(1000))
                .log("Hello World");
    }
}
注意

所有 Camel 组件的构建器方法均可通过 camel-quarkus-core 提供,但您仍需要添加给定组件的扩展作为路由的依赖项才能正常工作。在上例中,它将是 camel-quarkus-timer

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部