对于最新的稳定版本,请使用 Spring Integration 6.3.1Spring中文文档

对于最新的稳定版本,请使用 Spring Integration 6.3.1Spring中文文档

请参阅迁移指南,了解可能影响应用程序的重要更改。 您可以在 wiki 上找到所有版本的迁移指南,这些版本可以追溯到 2.1Spring中文文档

新组件

版本 4.1 添加了许多新组件。Spring中文文档

Promise<?>网关

消息传递网关方法现在支持 Reactor 返回类型。 请参阅异步网关PromiseSpring中文文档

WebSocket 支持

该模块现已推出。 它完全基于 Spring WebSocket 和 Spring Messaging 模块,并提供 an 和 . 有关详细信息,请参阅 WebSockets 支持WebSocket<inbound-channel-adapter><outbound-channel-adapter>Spring中文文档

Scatter-Gather 企业集成模式

我们实现了分散-聚集的企业集成模式。 有关详细信息,请参阅 Scatter-GatherSpring中文文档

布线滑模式

我们添加了路由单 EIP 模式实现。 有关详细信息,请参阅 Routing SlipSpring中文文档

幂等接收器模式

我们通过在 XML 中添加组件或 Java 配置的 and 注释,添加了幂等接收器企业集成模式实现。 有关更多信息,请参见 Idem幂等接收器企业集成模式Javadoc<idempotent-receiver>IdempotentReceiverInterceptorIdempotentReceiverSpring中文文档

福音JsonObjectMapper

我们为 JSON 转换器添加了 Boon。 有关详细信息,请参阅 TransformerJsonObjectMapperSpring中文文档

Redis 队列网关

我们添加了 和 组件。 请参阅 Redis 队列入站网关Redis 队列出站网关<redis-queue-inbound-gateway><redis-queue-outbound-gateway>Spring中文文档

PollSkipAdvice

我们添加了 ,您可以在 中使用它来确定是否应通过使用 实现的某个条件来抑制(跳过)当前轮询。 有关详细信息,请参阅轮询器PollSkipAdvice<advice-chain><poller>PollSkipStrategySpring中文文档

一般更改

本节介绍从 4.0 版到 4.1 版的一般更改。Spring中文文档

AMQP 入站终端节点、通道

使用消息侦听器容器的元素(入站端点和通道)现在支持该属性。 有关详细信息,请参阅 AMQP 支持missing-queues-fatalSpring中文文档

AMQP 出站终端节点

AMQP 出站终结点支持名为 (default: ) 的新属性。 当 时,在第一条消息到达之前,不会建立与代理的连接(假设没有入站端点,这些端点总是在启动期间尝试建立连接)。 如果设置为 ,则在应用程序启动期间尝试建立连接。 有关详细信息,请参阅 AMQP 支持lazy-connecttruetruefalseSpring中文文档

简单消息存储

调用时不再创建组的副本。 有关详细信息,请参阅 xref:message-store.adoc#sms-caution。SimpleMessageStoregetMessageGroup()Spring中文文档

Web 服务出站网关:encode-uri

现在提供了一个属性,允许在发送请求之前禁用 URI 对象的编码。<ws:outbound-gateway/>encode-uriSpring中文文档

HTTP 入站通道适配器和状态代码

现在可以配置 a 以覆盖默认状态。 有关详细信息,请参阅 HTTP 命名空间支持<http:inbound-channel-adapter>status-code-expression200 OKSpring中文文档

MQTT 适配器更改

您现在可以将 MQTT 通道适配器配置为连接到多个服务器,例如,支持高可用性 (HA)。 有关更多信息,请参阅 MQTT 支持Spring中文文档

MQTT 消息驱动的通道适配器现在支持为每个订阅指定 QoS 设置。 有关详细信息,请参阅入站(消息驱动)通道适配器Spring中文文档

MQTT 出站通道适配器现在支持异步发送,避免在确认传递之前阻塞。 有关详细信息,请参阅出站通道适配器Spring中文文档

现在可以在运行时以编程方式订阅和取消订阅主题。 有关详细信息,请参阅入站(消息驱动)通道适配器Spring中文文档

FTP 和 SFTP 适配器更改

FTP 和 SFTP 出站通道适配器现在支持追加到远程文件,并在远程文件已存在时执行特定操作。 远程文件模板现在也支持此模板,以及 和 。 此外,远程文件模板还提供对基础客户端对象的访问,从而允许访问低级别 API。rmdir()exists()Spring中文文档

有关详细信息,请参阅 FTP/FTPS 适配器SFTP 适配器Spring中文文档

拆分器和迭代器

Splitter组件现在支持将 AS 作为结果对象来生成输出消息。 有关详细信息,请参阅拆分器IteratorSpring中文文档

聚合

Aggregatorinstancess 现在支持新属性。 有关详细信息,请参阅聚合器expire-groups-upon-timeoutSpring中文文档

内容更丰富的改进

我们添加了一个属性,如果返回 ,则对其进行评估并返回。 您可以将其添加到 和 中。 有关详细信息,请参阅内容丰富器null-result-expression<enricher>null<header><property>Spring中文文档

我们添加了一个属性,该属性用于处理错误流,如果 . 这样,您就可以返回用于扩充的替代对象。 有关详细信息,请参阅内容丰富器error-channelExceptionrequest-channelSpring中文文档

标头通道注册表

元素的子元素现在可以覆盖标头通道注册表保留通道映射的默认时间。 有关详细信息,请参阅标头通道注册表<header-enricher/><header-channels-to-string/>Spring中文文档

有序关机

我们对有序关机算法进行了改进。 有关详细信息,请参阅有序关闭Spring中文文档

管理RecipientListRouter

现在提供了多个管理操作来在运行时配置收件人。 有了它,您现在可以从一开始就配置 without any。 有关详细信息,请参阅 RecipientListRouterManagementRecipientListRouter<recipient-list-router><recipient>Spring中文文档

AbstractHeaderMapper:NON_STANDARD_HEADERS 令牌

该实现现在提供额外的令牌来映射任何用户定义的标头,默认情况下不映射这些标头。 有关详细信息,请参阅 AMQP 消息标头AbstractHeaderMapperNON_STANDARD_HEADERSSpring中文文档

AMQP 通道:template-channel-transacted

我们引入了 AMQP 实例的属性。 有关详细信息,请参阅 AMQP 支持的消息通道template-channel-transactedMessageChannelSpring中文文档

Syslog 适配器

默认的 syslog 消息转换器现在有一个选项,可以在有效负载中保留原始消息,同时仍设置标头。 有关详细信息,请参阅 Syslog 入站通道适配器Spring中文文档

异步网关

除了前面提到的返回类型之外,网关方法现在还可以返回 Spring Framework 4.0 中引入的 。 您还可以在网关中禁用异步处理,让下游流直接返回 . 请参阅异步网关PromiseListenableFutureFutureSpring中文文档

聚合商咨询链

Aggregator现在支持和子元素为操作提供建议。 有关详细信息,请参阅使用 XML 配置聚合器Resequencer<expire-advice-chain/><expire-transactional/>forceCompleteSpring中文文档

出站通道适配器和脚本

现在支持子元素。 基础脚本必须具有返回类型或返回符。 请参阅 Groovy 支持脚本支持<int:outbound-channel-adapter/><script/>voidnullSpring中文文档

重排序器更改

当重排序器中的消息组超时(using 或 a )时,默认情况下,延迟到达的消息现在会立即丢弃。 请参阅 Resequencergroup-timeoutMessageGroupStoreReaperSpring中文文档

可选 POJO 方法参数

Spring Integration 现在始终如一地处理 Java 8 的类型。 请参阅配置服务激活器OptionalSpring中文文档

QueueChannelbacked 队列类型

支持已从更通用的 . 此更改允许使用任何外部实现(例如,Reactor 的 )。 请参阅 QueueChannel 配置QueueChannelQueue typeBlockingQueueQueueQueuePersistentQueueSpring中文文档

ChannelInterceptor变化

现在支持其他和方法。 请参阅信道拦截器ChannelInterceptorafterSendCompletion()afterReceiveCompletion()Spring中文文档

IMAP PEEK认证

从 V4.1.1 开始,如果将 JavaMail 属性显式设置为 (where is or ),则行为会发生变化。 请参阅 xref:changes-4.0-4.1.adoc#x4.1-mail-peekmail.[protocol].peekfalse[protocol]imapimapsSpring中文文档