0

目前,我正在使用 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/csvfolder 之类的临时文件夹中创建一个文件夹,并将 csv 文件放在 csvfolder 中,它仍然能够轮询文件。

我们可以将其限制为仅特定文件夹吗?

4

1 回答 1

0

如果你不使用watch服务,它只会看顶层。

如果要使用监视服务,则需要实现自定义DirectoryScanner.

于 2020-08-26T13:42:25.873 回答