Как читать несколько файлов, обрабатывать и писать отдельно с помощью Spring Batch - PullRequest
0 голосов
/ 03 марта 2020

Я хочу прочитать несколько файлов, 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;
}

1 Ответ

0 голосов
/ 03 марта 2020

Вот так MultiResourceItemReader предназначен для работы. В вашем случае вы можете создать экземпляр задания для каждого файла.

Есть много преимуществ, когда одна вещь делает одну вещь и делает это хорошо, и в вашем случае использования это перезапускаемость: если одно из заданий не выполнено, вы только перезапустите неудачное.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...