路由器是许多消息传递体系结构中的关键元素。 它们使用来自消息通道的消息,并根据一组条件将每个使用的消息转发到一个或多个不同的消息通道。Spring中文文档

Spring Integration 提供以下路由器:Spring中文文档

路由器实现共享许多配置参数。 但是,路由器之间存在某些差异。 此外,配置参数的可用性取决于路由器是在链内还是链外使用。 为了提供快速概述,所有可用的属性都列在下表中。Spring中文文档

下表显示了可用于链外部路由器的配置参数:Spring中文文档

表 1.链外的路由器
属性 路由器 标头值路由器 XPath路由器 有效负载类型路由器 收件人列表路由 异常类型路由器

apply-序列Spring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

默认输出通道Spring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

需要分辨率Spring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

ignore-send-failuresSpring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

超时Spring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

同上Spring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

自动启动Spring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

输入通道Spring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

次序Spring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

方法Spring中文文档

刻度线

裁判Spring中文文档

刻度线

表达Spring中文文档

刻度线

标头名称Spring中文文档

刻度线

计算为字符串Spring中文文档

刻度线

xpath-表达式-refSpring中文文档

刻度线

转炉Spring中文文档

刻度线

下表显示了链中路由器可用的配置参数:Spring中文文档

表 2.链条内的路由器
属性 路由器 标头值路由器 XPath路由器 有效负载类型路由器 收件人列表路由器 异常类型路由器

apply-序列Spring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

默认输出通道Spring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

需要分辨率Spring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

ignore-send-failuresSpring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

超时Spring中文文档

刻度线
刻度线
刻度线
刻度线
刻度线
刻度线

同上Spring中文文档

自动启动Spring中文文档

输入通道Spring中文文档

次序Spring中文文档

方法Spring中文文档

刻度线

裁判Spring中文文档

刻度线

表达Spring中文文档

刻度线

标头名称Spring中文文档

刻度线

计算为字符串Spring中文文档

刻度线

xpath-表达式-refSpring中文文档

刻度线

转炉Spring中文文档

刻度线

从Spring Integration 2.1开始,所有路由器实现的路由器参数都更加标准化。 因此,一些小的更改可能会破坏旧的基于 Spring Integration 的应用程序。Spring中文文档

从 Spring Integration 2.1 开始,该属性被删除,以支持将其行为与该属性合并。 此外,该属性现在默认为 。ignore-channel-name-resolution-failuresresolution-requiredresolution-requiredtrueSpring中文文档

在这些更改之前,该属性默认为 ,导致在未解析通道且未设置任何通道时以静默方式丢弃消息。 新行为至少需要一个已解析的通道,默认情况下,如果未确定通道(或尝试发送不成功),则会抛出 。resolution-requiredfalsedefault-output-channelMessageDeliveryExceptionSpring中文文档

如果您确实希望静默丢弃消息,可以设置 .default-output-channel="nullChannel"Spring中文文档

从Spring Integration 2.1开始,所有路由器实现的路由器参数都更加标准化。 因此,一些小的更改可能会破坏旧的基于 Spring Integration 的应用程序。Spring中文文档

从 Spring Integration 2.1 开始,该属性被删除,以支持将其行为与该属性合并。 此外,该属性现在默认为 。ignore-channel-name-resolution-failuresresolution-requiredresolution-requiredtrueSpring中文文档

在这些更改之前,该属性默认为 ,导致在未解析通道且未设置任何通道时以静默方式丢弃消息。 新行为至少需要一个已解析的通道,默认情况下,如果未确定通道(或尝试发送不成功),则会抛出 。resolution-requiredfalsedefault-output-channelMessageDeliveryExceptionSpring中文文档

如果您确实希望静默丢弃消息,可以设置 .default-output-channel="nullChannel"Spring中文文档