5.2 和 5.3 之间的更改
新组件
集成模式
引入了抽象来指示 Spring 集成组件属于哪个企业集成模式(an )和类别。
有关此抽象及其用例的更多信息,请参阅其 JavaDocs 和 Integration Graph。IntegrationPattern
IntegrationPatternType
ReactiveMessageHandler
现在,框架本身支持 。
有关更多信息,请参见 ReactiveMessageHandler。ReactiveMessageHandler
ReactiveMessageSourceProducer
这是将提供的 to 包装到 for on demand 调用中的反应式实现。
有关更多信息,请参阅 Reactive Streams Support 。ReactiveMessageSourceProducer
MessageProducerSupport
MessageSource
Flux
receive()
Java DSL 扩展
引入了一个新的 API,允许使用自定义或组合的 EIP 运算符扩展现有的 Java DSL。
这还可用于为任何现成的扩展引入定制器。
有关更多信息,请参阅 DSL 扩展。IntegrationFlowExtension
IntegrationComponentSpec
Kotlin DSL
引入了用于集成流配置的 Kotlin DSL。 有关更多信息,请参阅 Kotlin DSL 章节。
ReactiveRequestHandler建议
提供 A 以自定义来自消息处理程序的回复。
有关更多信息,请参见 Reactive Advice。ReactiveRequestHandlerAdvice
Mono
HandleMessageAdviceAdapter
提供 A 来包装 any 以应用于 ,而不是默认行为。
有关更多信息,请参阅 Handling Message Advice。HandleMessageAdviceAdapter
MethodInterceptor
MessageHandler.handleMessage()
AbstractReplyProducingMessageHandler.RequestHandler.handleRequestMessage()
MongoDB 反应式通道适配器
该模块现在为 Spring Data 中的反应式 MongoDb 驱动程序支持提供通道适配器实现。
此外,MongoDb 更改流支持的反应式实现也存在于 .
有关更多信息,请参阅 MongoDB 支持。spring-integration-mongodb
MongoDbChangeStreamMessageProducer
接收消息建议
引入了一个特殊的代理 exactly 或 .
有关更多信息,请参阅智能轮询。ReceiveMessageAdvice
MessageSource.receive()
PollableChannel.receive()
一般更改
网关代理现在默认不代理方法。
有关更多信息,请参阅调用默认
方法。default
现在,内部组件(如 )在集成图中表示时具有缩短的名称。
有关更多信息,请参阅 Integration Graph。_org.springframework.integration.errorLogger
在聚合器中,当 返回 a 时,如果 与组第一条消息中的标头匹配,则对输出消息执行 。
有关更多信息,请参阅 Aggregator Programming Model 。MessageGroupProcessor
Message
MessageBuilder.popSequenceDetails()
sequenceDetails
基于 和 的新运算符已添加到 Java DSL 中。
当我们将子流配置为代理支持的渠道(如 等)的发布-订阅订阅者时,这种 Fluent API 具有其优势。
有关更多信息,请参阅子流支持。publishSubscribeChannel()
BroadcastCapableChannel
BroadcastPublishSubscribeSpec
SubscribableJmsChannel
SubscribableRedisChannel
Spring Integration 中的事务支持现在还包括配置选项 if a 或 implementation 为要发送的有效负载生成反应类型。
有关更多信息,请参阅。
另请参见 Reactive Transactions。ReactiveTransactionManager
MessageSource
MessageHandler
TransactionInterceptorBuilder
Java DSL 中添加了一个无需创建显式通道即可注册实例的新运算符。
有关更多信息,请参见 Operator intercept() 。intercept()
ChannelInterceptor
具有比较新旧值的新机制。
有关详细信息,请参阅 Idempotent Receiver Enterprise Integration Pattern。MessageStoreSelector
基类现在有一个 API,允许实现消息驱动的生产者端点,这些端点通过 reactive 发出消息。
有关更多信息,请参阅 Reactive Streams Support 。MessageProducerSupport
subscribeToPublisher(Publisher<? extends Message<?>>)
Publisher
AMQP 更改
出站通道适配器具有一个新属性,允许在一次调用的范围内发送多条消息。
有关更多信息,请参阅 AMQP 出站通道适配器。multiSend
RabbitTemplate
入站通道适配器现在支持将属性设置为 .
请参阅 AMQP 入站通道适配器consumerBatchEnabled
true
HTTP 更改
上的属性已被弃用,取而代之的是新引入的 。
有关更多信息,请参阅 JavaDocs 和控制 URI 编码。
这也影响了 ,相应的 Java DSL 和 XML 配置。
相同的选项将添加到 .encodeUri
AbstractHttpRequestExecutingMessageHandler
encodingMode
DefaultUriBuilderFactory.EncodingMode
WebFluxRequestExecutingMessageHandler
AbstractWebServiceOutboundGateway
Web 服务更改
为 Web 服务组件添加了 Java DSL 支持。
上的属性已被弃用,取而代之的是新引入的 - 类似于上面的 HTTP 更改。
有关更多信息,请参阅 Web 服务支持。encodeUri
AbstractWebServiceOutboundGateway
encodingMode
TCP 更改
默认情况下,在当前连接失败之前,不再进行故障回复。
有关更多信息,请参阅 TCP 故障转移客户端连接工厂。FailoverClientConnectionFactory
现在支持异步请求/回复。
有关更多信息,请参阅 TCP 网关。TcpOutboundGateway
现在,您可以配置客户端连接以对新连接执行一些任意测试。 有关更多信息,请参阅测试连接。
RSocket 更改
已向 添加了一个选项,其含义是将传入解码为单个单元或对其中的每个事件应用解码。
有关更多信息,请参阅 RSocket 入站网关。decodeFluxAsUnit
RSocketInboundGateway
Flux
Zookeeper 更改
A (及其 XML )公开了一个选项,用于对配置进行更多控制。
有关更多信息,请参阅 领导层事件处理 。LeaderInitiatorFactoryBean
<int-zk:leader-listener>
candidate
Candidate
文件更改
该模式不再需要 Jackson 处理器(或类似)依赖项。
它使用 a 表示实例的直接字符串。
有关更多信息,请参阅 FileSplitter。FileSplitter
markersJson
SimpleJsonSerializer
FileSplitter.FileMarker