在spring批处理中从多个目录中读取文件

时间:2016-03-18 12:04:06

标签: spring-batch

我需要从多个目录中读取文件,然后处理数据并将其存储到数据库中。 目前我正在使用块多个资源阅读器,它适用于1个目录。 但现在我必须从多个目录中读取文件。 如何使用弹簧批次

1 个答案:

答案 0 :(得分:3)

您可以将MultiResourceItemReader与Step Scope一起使用。 使用StepScop后期绑定可以注入文件位置

MultiResourceItemReader<> multiResourceItemReader = new MultiResourceItemReader<>();
    ClassLoader cLoader = this.getClass().getClassLoader();
    ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(cLoader);
    resources = resolver.getResources("file:" + FileLocationAsVaribale);
    multiResourceItemReader.setResources(resources);
    multiResourceItemReader.setDelegate(yourReader());