跳到主要内容
版本:7.0.2

MessagingTemplate

DeepSeek V3 中英对照 MessagingTemplate MessagingTemplate

在介绍端点及其各种配置选项时,Spring Integration 为消息传递组件提供了一个基础,使得消息系统能够以非侵入式的方式调用您的应用程序代码。然而,有时也需要从您的应用程序代码中调用消息系统。为了方便实现此类用例,Spring Integration 提供了一个 MessagingTemplate,它支持跨消息通道的多种操作,包括请求和应答场景。例如,可以发送请求并等待应答,如下所示:

MessagingTemplate template = new MessagingTemplate();

Message reply = template.sendAndReceive(someChannel, new GenericMessage("test"));

在前面的示例中,模板会在内部创建一个临时的匿名通道。sendTimeoutreceiveTimeout 属性也可以在模板上设置,并且也支持其他交换类型。以下清单展示了此类方法的签名:

public boolean send(final MessageChannel channel, final Message<?> message) { ...
}

public Message<?> sendAndReceive(final MessageChannel channel, final Message<?> request) { ...
}

public Message<?> receive(final PollableChannel<?> channel) { ...
}
备注

一种侵入性较低的方法,允许您使用负载或头部值调用简单接口,而不是使用 Message 实例,这在进入 GatewayProxyFactoryBean 中有描述。