分流器
要创建拆分器,请使用 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<?> 参数。