+-
Spring集成Java – 如何使用@InboundChannelAdapter检查目录中的文件?
如何让@InboundChannelAdapter处理文件?这样的事情:

<int-file:inbound-channel-adapter id="executionMessageFileInputChannel" directory="file:${fpml.messages.input}" prevent-duplicates="false" filename-pattern="*.xml"> <int:poller fixed-delay="20000" max-messages-per-poll="1" /> </int-file:inbound-channel-adapter>

但在java?

最佳答案
像这样的东西:

@Bean @InboundChannelAdapter(value = "executionMessageFileInputChannel", poller = @Poller(fixedDelay = "20000", maxMessagesPerPoll = "1")) public MessageSource<File> fileMessageSource(@Value("${fpml.messages.input}") File directory) { FileReadingMessageSource fileReadingMessageSource = new FileReadingMessageSource(); fileReadingMessageSource.setDirectory(directory); fileReadingMessageSource.setFilter(new SimplePatternFileListFilter("*.xml")); return fileReadingMessageSource; }

从另一方面请注意,到Spring Integration Java DSL项目,使用它可能看起来像:

@Bean public IntegrationFlow fileReadingFlow(@Value("${fpml.messages.input}") File directory) { return IntegrationFlows .from(s -> s.file(directory).patternFilter("*.xml"), e -> e.poller(Pollers.fixedDelay(20000))) ..................... .get(); }
点击查看更多相关文章

转载注明原文:Spring集成Java – 如何使用@InboundChannelAdapter检查目录中的文件? - 乐贴网