2.5. 创建交换实例

概述

使用 Java 代码处理消息时(例如,在 bean 类或在处理器类中),通常会需要创建新的交换实例。如果您需要创建 Exchange 对象,最简单的方法是调用 ExchangeBuilder 类的方法,如下所述。

ExchangeBuilder 类

ExchangeBuilder 类的完全限定名称如下:

org.apache.camel.builder.ExchangeBuilder

ExchangeBuilder 公开静态方法 aExchange,可用于开始构建交换对象。

示例

例如,以下代码会创建一个新的交换对象,其中包含消息正文字符串 Hello World!,以及包含用户名和密码凭证的标头:

// Java
import org.apache.camel.Exchange;
import org.apache.camel.builder.ExchangeBuilder;
...
Exchange exch = ExchangeBuilder.anExchange(camelCtx)
                    .withBody("Hello World!")
                    .withHeader("username", "jdoe")
                    .withHeader("password", "pass")
                    .build();

ExchangeBuilder 方法

ExchangeBuilder 类支持以下方法:

ExchangeBuilder aExchange(CamelContext context)
(静态方法)初始构建交换对象。
Exchange build()
构建交换.
ExchangeBuilder withBody(Object body)
在交换上设置消息正文(即,设置交换的 In 消息正文)。
ExchangeBuilder 带有Header(String key, Object value)
在交换上设置一个标头(即,在交换的 In 消息上设置一个标头)。
ExchangeBuilder withPattern(ExchangePattern pattern)
在交换模式上设置交换模式。
ExchangeBuilder withProperty(String key, Object value)
在交换上设置属性。