|
此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Integration 6.4.0! |
5.5 和 6.0 之间的更改
新组件
添加了用于集成流定义的 Groovy DSL 实现。 有关更多信息,请参阅 Groovy DSL。
MQTT 客户端管理器
新的 MQTTClientManager已添加以支持跨不同通道适配器的可重用 MQTT 连接。
有关更多信息,请参阅共享 MQTT 客户端支持。
GraphQL 支持
添加了 GraphQL 支持。 有关更多信息,请参阅 GraphQL 支持。
Apache Camel 支持
引入了对 Apache Camel 路由的支持。 有关更多信息,请参阅 Apache Camel 支持。
Hazelcast 支持
Hazelcast Spring 集成扩展项目已作为spring-integration-hazelcast模块。
有关更多信息,请参阅 Hazelcast 支持。
SMB 支持
SMB 支持已从 Spring Integration Extensions 项目添加。
Java DSL(参见org.springframework.integration.smb.dsl.Smbfactory)也已添加到此模块中。
一SmbStreamingMessageSource和SmbOutboundGatewayimplementation 的 implementation 进行介绍。
有关详细信息,请参阅 SMB 支持。
PostgreSQL 推送通知
一个PostgresSubscribableChannel允许通过以下方式接收推送通知PostgresChannelMessageTableSubscriber在新消息添加到JdbcChannelMessageStore.
有关更多信息,请参阅 PostgreSQL:接收推送通知。
RabbitMQ 流队列支持
AMQP 模块已得到增强,可为使用 RabbitMQ Stream Queues 的入站和出站通道适配器提供支持。 有关更多信息,请参阅 RabbitMQ 流队列支持。
Apache MINA SFTP
SFTP 模块已从过时的 JCraft JSch 库完全重新设计为更健壮和现代org.apache.sshd:sshd-sftpApache MINA 项目的模块。
有关更多信息,请参阅 SFTP 适配器。
千分尺观察
现在支持使用 Micrometer 对计时器启用观察和跟踪。 有关更多信息,请参阅千分尺观测。
GraalVM Polyglot 支持
脚本模块现在提供了一个PolyglotScriptExecutor基于 GraalVM Polyglot 支持的实现。
JavaScript 支持现在基于此执行程序,因为它的 JSR223 实现已从 Java 中删除。
有关更多信息,请参阅脚本支持。
Apache Cassandra 支持
Apache Cassandra Spring Integration Extensions 项目已作为spring-integration-cassandra模块。
有关更多信息,请参阅 Apache Cassandra 支持。
本机映像
支持创建 GraalVM 原生映像。 有关更多信息,请参阅本机映像支持。
一般更改
消息传递注释现已推出@Repeatable并且可以在同一个 service 方法上多次声明相同的类型。
消息收发注释不需要poller属性作为@Poller了。
有关更多信息,请参阅 Annotation Support 。
为方便起见,用于 Scatter-Gather 的 XML 和 Java DSL 基于RecipientListRouter,现在将applySequence = true,因此 gatherer 部分可以依赖默认的关联策略。
有关更多信息,请参阅 Scatter-Gather 。
对AbstractMappingMessageRouter.
现在,设置defaultOutputChannel还会重置channelKeyFallbackproperty 设置为false,因此不会尝试从其 key 解析通道,但逻辑会立即回退到将消息发送到defaultOutputChannel.
有关详细信息,请参阅路由器选项。
这AggregatingMessageHandler现在不会拆分Collection<Message<?>>的结果MessageGroupProcessor(除非它是SimpleMessageGroupProcessor) 的 Package,但会发出一条包含整个集合作为有效负载的消息。
有关更多信息,请参阅 Aggregator。
这IntegrationFlowsfactory 现在标记为已弃用,以支持IntegrationFlow接口本身。
Factory 类将在将来的发行版中删除。
有关更多信息,请参阅 Java DSL。
这org.springframework.util.concurrent.ListenableFuture从 Spring Framework 开始已弃用6.0.
所有 Spring 集成异步 API 都已迁移到CompletableFuture.
Messaging Gateway 接口方法现在可以返回Future<Void>和Mono<Void>正确异步执行下游流。
旁边带有@MessagingGatewayannotation 接口也可以用@Primary.
@MessagingGateway接口现在可以用作@Import用于配置的资源。
网关代理 bean 的默认命名策略可以通过@IntegrationComponentScan.nameGenerator()属性。
如果AnnotationConfigUtils.CONFIGURATION_BEAN_NAME_GENERATORbean 存在,则在回退到AnnotationBeanNameGenerator.
有关更多信息,请参阅 Messaging Gateway。
这integrationGlobalPropertiesBean 现在由框架声明为org.springframework.integration.context.IntegrationProperties而不是之前弃用的java.util.Properties.
生成集合作为回复的消息处理程序(例如JpaOutboundGateway,JdbcOutboundGateway和其他基于数据库的网关)现在,如果查询未返回任何记录,则返回空结果列表。
以前null返回结束流或引发异常,具体取决于requiresReply.
RMI 删除
这spring-integration-rmimodule 在以前的版本中被弃用后已被完全删除。
没有替代品:建议迁移到更安全的网络和应用程序协议,例如 WebSockets、RSockets、gRPC 或 REST。
GemFire 移除
这spring-integration-gemfire模块已被完全删除,因为没有 Spring Data2022.0.0支持 VMware GemFire 或 Apache Geode。
HTTP 更改
这#cookies变量,在HttpRequestHandlingEndpointSupport现在是MultiValueMap来携带客户端设置的 cookie 的所有值。
有关更多信息,请参阅 HTTP 支持。
Apache Kafka 更改
当提供RetryTemplate在入站网关或消息驱动的通道适配器上,如果errorChannel中,还提供了一个ErrorMessageSendingRecoverer将自动配置。
此外,新的KafkaErrorMessageSendingRecoverer提供;这可以与DefaultErrorHandler以避免长时间聚合重试延迟导致分区重新平衡的问题。
有关更多信息,请参阅 Spring for Apache Kafka 支持。
JDBC 更改
这DefaultLockRepository现在可以提供PlatformTransactionManager而不是依赖于应用程序上下文中的主 bean。
有关更多信息,请参阅 JDBC Lock Registry。
TCP/IP 更改
这lookupHost属性的AbstractConnectionFactory和DatagramPacketMessageMapper现在设置为false以避免在未配置 DNS 的环境中出现延迟。
有关更多信息,请参阅 TCP 和 UDP 支持。
JMS 更改
这JmsOutboundGateway现在创建一个TemporaryTopic而不是TemporaryQueue如果replyPubSubDomainoption 设置为true.
有关更多信息,请参阅 JMS 支持。
安全性更改
这ChannelSecurityInterceptor及其注释@SecuredChannel和 XML<secured-channels>配置已被弃用,取而代之的是AuthorizationChannelInterceptor.
有关更多信息,请参阅安全支持。
Webflux 请求属性支持
添加了 Webclient 请求属性支持WebFluxRequestExecutingMessageHandler.
有关更多信息,请参阅 WebFlux 请求属性。