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.