我需要从多个目录中读取文件,然后处理数据并将其存储到数据库中。 目前我正在使用块多个资源阅读器,它适用于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());