我想扩展spring集成消息。 我希望在消息流经通道时添加一些标头值。
我阅读了MessageHeader的文档,如下所示。我如何得到第三种情况的样本?
创建邮件头的一种方法是使用MessageBuilder:
MessageBuilder.withPayload( “foo” 的)。的setHeader( “KEY1”, “value1”)。setHeader(“key2”,“value2”);
第二个选项是创建
org.springframework.messaging.support.GenericMessage传递有效负载 as对象和头文件作为java.util.Map:Map headers = new HashMap中(); headers.put(“key1”,“value1”); headers.put( “KEY2” “VALUE2”);新的GenericMessage(“foo”,标题);
第三种选择是
使用org.springframework.messaging.support.MessageHeaderAccessor或者一个 其子类用于创建特定类别的标题。
答案 0 :(得分:0)
如果要求只是在消息流经通道时添加一些标头值,那么标题扩充器可以达到目的。
<int:header-enricher input-channel="in" output-channel="out">
<int:header name="foo" value="123"/>
<int:header name="bar" ref="someBean"/>
</int:header-enricher>