问题描述
当前,我正在使用FileReadingMessageSource通过Spring Integration从特定目录读取文件。
@Bean
public MessageSource<File> fileReadingMessageSource() {
FileReadingMessageSource source = new FileReadingMessageSource();
source.setDirectory(new File(/temp));
source.setFilter(new SimplePatternFileListFilter("*.csv"));
source.setUseWatchService(true);
source.setWatchEvents(WatchEventType.CREATE);
return source;
}
问题,我面临的是上面的配置能够从temp文件夹以及temp文件夹内的其他文件夹读取文件。例如-如果我在temp之内创建一个文件夹(如temp / csvfolder),然后将csv文件放置在csvfolder中,它仍然可以轮询该文件。
我们可以仅将其限制为特定文件夹吗?
解决方法
如果您不使用监视服务,则只会在顶层使用。
如果要使用监视服务,则需要实现自定义DirectoryScanner
。