【问题标题】:How to read multiple files, process and write separately using spring batch如何使用spring批处理读取多个文件,分别处理和写入
【发布时间】:2020-06-15 19:40:01
【问题描述】:

我想读取多个文件,name*.txt 并处理它们。

为此,我使用MultiResourceItemReader

它是一次读取所有文件并处理和写入。我想分别读取多个文件,处理并写入它们。

代码:

@Bean
public MultiResourceItemReader<POJO> multiResourceItemReader() {
    MultiResourceItemReader<POJO> resourceItemReader = new MultiResourceItemReader<POJO>();
    ClassLoader cl = this.getClass().getClassLoader();
    ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(cl);

    Resource[] resources = resolver.getResources("file:" + filePath );
    resourceItemReader.setResources(resources);
    resourceItemReader.setDelegate(reader());
    return resourceItemReader;
}

【问题讨论】:

    标签: spring-boot spring-batch


    【解决方案1】:

    MultiResourceItemReader 就是这样设计的。在您的情况下,您可以为每个文件创建一个作业实例。

    让一件事做好一件事有很多好处,其中一个在您的用例中是可重启性:如果其中一项作业失败,您只需重新启动失败的那一项。

    【讨论】:

      猜你喜欢
      • 2022-07-04
      • 1970-01-01
      • 2012-07-30
      • 1970-01-01
      • 1970-01-01
      • 2015-11-13
      • 2021-12-15
      • 1970-01-01
      • 2019-03-16
      相关资源
      最近更新 更多