Процессор в Spring Batch - Java EE

168
01 октября 2018, 09:50

у меня есть структура в Spring Batch. 1. xmlItemReader читает xml, в нем есть дата. Date one. 2. затем идет процессор, который должен по условию if(one<current) создавать список дат меньших сегодняшних. 3. затем запись этот список в файл txt.

пункт 1 реализован так

@Bean
    public ItemReader<Bic> reader() {
        FlatFileItemReader<Bic> reader = new FlatFileItemReader<Bic>();
        reader.setResource(new ClassPathResource("sample-data.xml"));
        reader.setLineMapper(new DefaultLineMapper<Bic>() {{
            setLineTokenizer(new DelimitedLineTokenizer() {{
                setNames(new String[]{"date"});
            }});
            setFieldSetMapper(new BeanWrapperFieldSetMapper<Bic>() {{
                setTargetType(Bic.class);
            }});
        }});
        return reader;
    }

пункт 3 реализован так

@Bean
public FlatFileItemWriter itemWriter() {
        return  new FlatFileItemWriterBuilder<Foo>()
                                   .name("itemWriter")
                                   .resource(new FileSystemResource("target/test/output.txt"))
                                   .lineAggregator(new PassThroughLineAggregator<>())
                                   .build();
}

как реализовать процессор с условием в п.2?

Answer 1

Не совсем понятно, почему нельзя использовать ItemProcessor?

public class CustomItemProcessor implements ItemProcessor<String, Foo {
  public Foo process(Bic item) {
    if (predicate){
        return new Foo();
      }
    return null;
  }
}

Остается только сформировать джобу.

READ ALSO
Можно ли над методом рест-контроллера ставить аннотацию @Transactional?

Можно ли над методом рест-контроллера ставить аннотацию @Transactional?

Можно ли над методом рест-контроллера ставить аннотацию @Transactional? Будут ли проблемы, если одновременно по этому URL одновременно будут пытаться...

177
FileOutputStream запись в файл

FileOutputStream запись в файл

При записи текста каждый раз создается новый файл "buterbrodtxt"

225
В чем ошибка отображение нужной фразы после проверки метки маркера?

В чем ошибка отображение нужной фразы после проверки метки маркера?

Отображается только одно сообщение "Strips" как при нажатии на маркер с выводом сообщения "Strips", так и у маркера, который должен выводить сообщение...

172