|
该版本仍在开发中,尚未被视为稳定。对于最新的稳定版本,请使用 Spring Integration 7.0.0! |
外发消息转换
春季AMQP 1.4引入了内容类型委托消息转换器,其中实际的转换器是基于
在 incoming content type message 属性上。
这可以被入站端点使用。
从 Spring Integration 4.3 版本开始,你可以使用内容类型委托消息转换器在出站端点上也同样如此,且内容类型头部指示所使用的转换器。
以下示例配置为内容类型委托消息转换器,默认转换器为简易消息转换器(处理Java序列化和纯文本),以及一个JSON转换器:
<amqp:outbound-channel-adapter id="withContentTypeConverter" channel="ctRequestChannel"
exchange-name="someExchange"
routing-key="someKey"
amqp-template="amqpTemplateContentTypeConverter" />
<int:channel id="ctRequestChannel"/>
<rabbit:template id="amqpTemplateContentTypeConverter"
connection-factory="connectionFactory" message-converter="ctConverter" />
<bean id="ctConverter"
class="o.s.amqp.support.converter.ContentTypeDelegatingMessageConverter">
<property name="delegates">
<map>
<entry key="application/json">
<bean class="o.s.amqp.support.converter.Jackson2JsonMessageConverter" />
</entry>
</map>
</property>
</bean>
发送消息ct请求频道其中内容类型头部设置为application/json导致选择 JSON 转换器。
这适用于出站通道适配器和网关。
|
从5.0版本开始,添加到 然而,也存在需要之前行为的情况——例如,当 现在有一个名为 从5.1.9版本开始,类似的版本 |