5.5 和 6.0 之间的更改

新组件

已添加集成流定义的 Groovy DSL 实现。有关更多信息,请参阅Groovy DSL

MQTT 客户端管理器

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

GraphQL 支持

已添加 GraphQL 支持。有关更多信息,请参阅GraphQL 支持

Apache Camel 支持

已引入对 Apache Camel 路由的支持。有关更多信息,请参阅Apache Camel 支持

Hazelcast 支持

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

SMB 支持

已从 Spring Integration Extensions 项目添加 SMB 支持。Java DSL(请参阅 org.springframework.integration.smb.dsl.Smb 工厂)也已添加到此模块。引入了 SmbStreamingMessageSourceSmbOutboundGateway 实现。有关更多信息,请参阅SMB 支持

PostgreSQL 推送通知

当新消息添加到 JdbcChannelMessageStore 时,PostgresSubscribableChannel 允许通过 PostgresChannelMessageTableSubscriber 接收推送通知。

有关更多信息,请参阅PostgreSQL:接收推送通知

RabbitMQ Stream 队列支持

AMQP 模块已增强,以提供对使用 RabbitMQ Stream 队列的入站和出站通道适配器的支持。有关更多信息,请参阅RabbitMQ Stream 队列支持

Apache MINA SFTP

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

有关更多信息,请参阅SFTP 适配器

Micrometer 观测

现在支持使用 Micrometer 启用计时器和跟踪的观测。有关更多信息,请参阅Micrometer 观测

GraalVM 多语言支持

脚本模块现在提供基于 GraalVM 多语言支持的 PolyglotScriptExecutor 实现。JavaScript 支持现在基于此执行器,因为其 JSR223 实现已从 Java 本身中删除。有关更多信息,请参阅脚本支持

Apache Cassandra 支持

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

Kotlin 协程

框架已引入 Kotlin 协程支持。

有关更多信息,请参阅Kotlin 协程

原生镜像

提供了创建 GraalVM 原生镜像的支持。有关更多信息,请参阅原生镜像支持

一般更改

消息注解现在是 @Repeatable,并且可以在同一个服务方法上多次声明相同类型。消息注解不再需要 poller 属性作为 @Poller 数组。

有关更多信息,请参阅注解支持

为了方便起见,基于 RecipientListRouter 的 Scatter-Gather 的 XML 和 Java DSL 现在设置 applySequence = true,因此 gatherer 部分可以依赖默认的关联策略。

有关更多信息,请参阅Scatter-Gather

AbstractMappingMessageRouter 进行了另一个方便的行为更改。现在,设置 defaultOutputChannel 还会将 channelKeyFallback 属性重置为 false,因此不会尝试从其键解析通道,而是逻辑立即回退到将消息发送到 defaultOutputChannel

有关更多信息,请参阅路由器选项

AggregatingMessageHandler 现在不会在输出时拆分 MessageGroupProcessorCollection<Message<?>> 结果(除非它是 SimpleMessageGroupProcessor),而是发出一个包含此整个集合作为有效负载的单个消息。

有关更多信息,请参阅聚合器

IntegrationFlows 工厂现在已标记为已弃用,以支持 IntegrationFlow 接口本身中提供的 Fluent API。该工厂类将在未来的版本中删除。

有关更多信息,请参阅Java DSL

从 Spring Framework 6.0 开始,org.springframework.util.concurrent.ListenableFuture 已弃用。所有 Spring Integration 异步 API 都已迁移到 CompletableFuture

消息网关接口方法现在可以返回 Future<Void>Mono<Void>,并具有下游流的适当异步执行。

除了 @MessagingGateway 注解,接口还可以标记为 @Primary

@MessagingGateway 接口现在可以用作配置的 @Import 资源。

网关代理 bean 的默认命名策略可以通过 @IntegrationComponentScan.nameGenerator() 属性进行自定义。如果存在 AnnotationConfigUtils.CONFIGURATION_BEAN_NAME_GENERATOR bean,则在回退到 AnnotationBeanNameGenerator 之前会咨询它。

有关更多信息,请参阅消息网关

integrationGlobalProperties bean 现在由框架声明为 org.springframework.integration.context.IntegrationProperties 的实例,而不是之前已弃用的 java.util.Properties

生成集合作为回复的消息处理器(例如 JpaOutboundGatewayJdbcOutboundGateway 和其他基于数据库的网关)如果查询没有返回任何记录,现在返回一个空结果列表。以前,根据 requiresReply,会返回 null 结束流,或者抛出异常。

RMI 移除

spring-integration-rmi 模块在前几个版本中已弃用,现已完全删除。没有替代品:建议迁移到更安全的网络和应用协议,例如 WebSockets、RSockets、gRPC 或 REST。

GemFire 移除

spring-integration-gemfire 模块已完全删除,因为 Spring Data 2022.0.0 不支持 VMware GemFire 或 Apache Geode。

HTTP 更改

HttpRequestHandlingEndpointSupport 中公开的用于表达式评估上下文的 #cookies 变量现在是一个 MultiValueMap,用于携带客户端设置的所有 Cookie 值。有关更多信息,请参阅HTTP 支持

Apache Kafka 更改

当在入站网关或消息驱动通道适配器上提供 RetryTemplate 时,如果也提供了 errorChannel,则会自动配置 ErrorMessageSendingRecoverer

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

有关更多信息,请参阅Spring for Apache Kafka 支持

JDBC 更改

DefaultLockRepository 现在可以提供 PlatformTransactionManager,而不是依赖于应用程序上下文中的主 bean。

有关更多信息,请参阅JDBC 锁注册表

TCP/IP 更改

AbstractConnectionFactoryDatagramPacketMessageMapperlookupHost 属性现在默认设置为 false,以避免在未配置 DNS 的环境中出现延迟。

有关更多信息,请参阅TCP 和 UDP 支持

JMS 更改

如果 replyPubSubDomain 选项设置为 trueJmsOutboundGateway 现在会创建 TemporaryTopic 而不是 TemporaryQueue

有关更多信息,请参阅JMS 支持

安全更改

ChannelSecurityInterceptor 及其注解 @SecuredChannel 和 XML <secured-channels> 配置已弃用,转而使用 AuthorizationChannelInterceptor

有关更多信息,请参阅安全支持

Webflux 请求属性支持

已为 WebFluxRequestExecutingMessageHandler 添加 Webclient 请求属性支持。

有关更多信息,请参阅WebFlux 请求属性

© . This site is unofficial and not affiliated with VMware.