分发器
要创建分发器,请使用 split()
EIP 方法。默认情况下,如果载荷是 Iterable
、Iterator
、Array
、Stream
或响应式 Publisher
,split()
方法会将每个项目作为单独的消息输出。它接受 lambda、SpEL 表达式或任何 AbstractMessageSplitter
实现。或者,您可以在不带参数的情况下使用它来提供 DefaultMessageSplitter
。以下示例展示了如何通过提供 lambda 来使用 splitWith()
方法
@Bean
public IntegrationFlow splitFlow() {
return IntegrationFlow.from("splitInput")
.splitWith(s -> s.applySequence(false).delimiters(","))
.channel(MessageChannels.executor(taskExecutor()))
.get();
}
上述示例创建了一个分发器,用于拆分包含逗号分隔的 String
的消息。
另请参阅 Lambdas 和 Message<?>
参数。