对于最新的稳定版本,请使用 Spring Integration 6.3.4spring-doc.cn

对于最新的稳定版本,请使用 Spring Integration 6.3.4spring-doc.cn

新组件

添加了用于集成流定义的 Groovy DSL 实现。 有关更多信息,请参阅 Groovy DSLspring-doc.cn

MQTT 客户端管理器

添加了新的 MQTT,以支持跨不同通道适配器的可重用 MQTT 连接。 有关更多信息,请参阅共享 MQTT 客户端支持ClientManagerspring-doc.cn

GraphQL 支持

添加了 GraphQL 支持。 有关更多信息,请参阅 GraphQL 支持spring-doc.cn

Apache Camel 支持

引入了对 Apache Camel 路由的支持。 有关更多信息,请参阅 Apache Camel 支持spring-doc.cn

Hazelcast 支持

Hazelcast Spring Integration Extensions 项目已作为模块迁移。 有关更多信息,请参阅 Hazelcast 支持spring-integration-hazelcastspring-doc.cn

SMB 支持

SMB 支持已从 Spring Integration Extensions 项目添加。 Java DSL(参见工厂)也已添加到此模块中。 介绍了 和 implementation 。 有关详细信息,请参阅 SMB 支持org.springframework.integration.smb.dsl.SmbSmbStreamingMessageSourceSmbOutboundGatewayspring-doc.cn

PostgreSQL 推送通知

A 允许通过在 添加新消息时接收推送通知。PostgresSubscribableChannelPostgresChannelMessageTableSubscriberJdbcChannelMessageStorespring-doc.cn

有关更多信息,请参阅 PostgreSQL:接收推送通知spring-doc.cn

RabbitMQ 流队列支持

AMQP 模块已得到增强,可为使用 RabbitMQ Stream Queues 的入站和出站通道适配器提供支持。 有关更多信息,请参阅 RabbitMQ 流队列支持spring-doc.cn

Apache MINA SFTP

SFTP 模块已从过时的 JCraft JSch 库完全重新设计为 Apache MINA 项目的更健壮和现代的模块。org.apache.sshd:sshd-sftpspring-doc.cn

有关更多信息,请参阅 SFTP 适配器spring-doc.cn

千分尺观察

现在支持使用 Micrometer 对计时器启用观察和跟踪。 有关更多信息,请参阅千分尺观测spring-doc.cn

GraalVM Polyglot 支持

脚本模块现在提供基于 GraalVM Polyglot 支持的实现。 JavaScript 支持现在基于此执行程序,因为它的 JSR223 实现已从 Java 中删除。 有关更多信息,请参阅脚本支持PolyglotScriptExecutorspring-doc.cn

Apache Cassandra 支持

Apache Cassandra Spring Integration Extensions 项目已作为模块迁移。 有关更多信息,请参阅 Apache Cassandra 支持spring-integration-cassandraspring-doc.cn

Kotlin 协程

框架中引入了 Kotlin 协程支持。spring-doc.cn

如需了解详情,请参阅 Kotlin 协程spring-doc.cn

本机映像

支持创建 GraalVM 原生映像。 有关更多信息,请参阅本机映像支持spring-doc.cn

一般更改

消息传递注释现在是,并且可以在同一服务方法上多次声明相同的类型。 消息传递注释不再需要 attribute 作为 的数组。@Repeatablepoller@Pollerspring-doc.cn

有关更多信息,请参阅 Annotation Supportspring-doc.cn

为方便起见,用于 Scatter-Gather 的 XML 和 Java DSL 基于 ,现在设置了一个 ,因此 Gatherer 部分可以依赖默认的关联策略。RecipientListRouterapplySequence = truespring-doc.cn

有关更多信息,请参阅 Scatter-Gatherspring-doc.cn

对 进行了另一个方便的 行为更改。 现在,设置 a 也会将属性重置为 ,因此不会尝试从其 key 解析通道,但逻辑会立即回退到将消息发送到 。AbstractMappingMessageRouterdefaultOutputChannelchannelKeyFallbackfalsedefaultOutputChannelspring-doc.cn

有关详细信息,请参阅路由器选项spring-doc.cn

now 不会在输出上拆分 (除非它是 ) 的结果,而是发出一条包含整个集合作为有效负载的消息。AggregatingMessageHandlerCollection<Message<?>>MessageGroupProcessorSimpleMessageGroupProcessorspring-doc.cn

有关更多信息,请参阅 Aggregatorspring-doc.cn

工厂现在被标记为已弃用,以支持接口本身中提供的 Fluent API。 Factory 类将在将来的发行版中删除。IntegrationFlowsIntegrationFlowspring-doc.cn

有关更多信息,请参阅 Java DSLspring-doc.cn

从 Spring Framework 开始,已弃用。 所有 Spring 集成异步 API 都已迁移到 .org.springframework.util.concurrent.ListenableFuture6.0CompletableFuturespring-doc.cn

Messaging Gateway 接口方法可以返回下游流,并正确异步执行下游流。Future<Void>Mono<Void>spring-doc.cn

除了注释外,接口还可以标有 .@MessagingGateway@Primaryspring-doc.cn

@MessagingGateway接口现在可以用作配置资源。@Importspring-doc.cn

网关代理 bean 的默认命名策略可以通过 attribute 进行自定义。 如果存在 bean,则在回退到 .@IntegrationComponentScan.nameGenerator()AnnotationConfigUtils.CONFIGURATION_BEAN_NAME_GENERATORAnnotationBeanNameGeneratorspring-doc.cn

有关更多信息,请参阅 Messaging Gatewayspring-doc.cn

现在,框架将 bean 声明为实例,而不是以前弃用的 .integrationGlobalPropertiesorg.springframework.integration.context.IntegrationPropertiesjava.util.Propertiesspring-doc.cn

如果查询未返回任何记录,则生成集合作为回复的消息处理程序(例如,和其他基于 DB 的网关)现在返回空结果列表。 以前,返回结束流或引发异常,具体取决于 .JpaOutboundGatewayJdbcOutboundGatewaynullrequiresReplyspring-doc.cn

RMI 删除

该模块在以前的版本中被弃用后已被完全删除。 没有替代品:建议迁移到更安全的网络和应用程序协议,例如 WebSockets、RSockets、gRPC 或 REST。spring-integration-rmispring-doc.cn

GemFire 移除

由于没有 Spring Data 对 VMware GemFire 或 Apache Geode 的支持,因此该模块已被完全删除。spring-integration-gemfire2022.0.0spring-doc.cn

HTTP 更改

表达式评估上下文的变量(在 中公开)现在是 a,用于承载客户端设置的 Cookie 的所有值。 有关更多信息,请参阅 HTTP 支持#cookiesHttpRequestHandlingEndpointSupportMultiValueMapspring-doc.cn

Apache Kafka 更改

在提供入站网关或消息驱动的通道适配器时,如果还提供了 ,则会自动配置 。RetryTemplateerrorChannelErrorMessageSendingRecovererspring-doc.cn

此外,还提供了 new;这可以与 a 一起使用,以避免长时间聚合重试延迟导致分区重新平衡的问题。KafkaErrorMessageSendingRecovererDefaultErrorHandlerspring-doc.cn

有关更多信息,请参阅 Spring for Apache Kafka 支持spring-doc.cn

JDBC 更改

现在可以提供 a 而不是依赖于应用程序上下文中的主 bean。DefaultLockRepositoryPlatformTransactionManagerspring-doc.cn

有关更多信息,请参阅 JDBC Lock Registryspring-doc.cn

TCP/IP 更改

和 的属性现在默认设置为,以避免在未配置 DNS 的环境中出现延迟。lookupHostAbstractConnectionFactoryDatagramPacketMessageMapperfalsespring-doc.cn

有关更多信息,请参阅 TCP 和 UDP 支持spring-doc.cn

JMS 更改

现在创建一个 instead of if 选项设置为 。JmsOutboundGatewayTemporaryTopicTemporaryQueuereplyPubSubDomaintruespring-doc.cn

有关更多信息,请参阅 JMS 支持spring-doc.cn

安全性更改

及其注释和 XML 配置已被弃用,取而代之的是 。ChannelSecurityInterceptor@SecuredChannel<secured-channels>AuthorizationChannelInterceptorspring-doc.cn

有关更多信息,请参阅安全支持spring-doc.cn

Webflux 请求属性支持

已为 添加了 Webclient 请求属性支持 。WebFluxRequestExecutingMessageHandlerspring-doc.cn

有关更多信息,请参阅 WebFlux 请求属性spring-doc.cn