*** Im newb ie для загрузки Spring.
Я хочу вывести количество строк в нижний колонтитул.
Мне нужно добавить переменную count в нижний колонтитул - setFooterCallback () как показано ниже. В настоящее время он принимает значение null. Есть идеи?
============================= ItemCountListner. java
public class ItemCountListener implements ChunkListener {
@Override
public void beforeChunk(ChunkContext context) {
}
@Override
public void afterChunk(ChunkContext context) {
int count = context.getStepContext().getStepExecution().getReadCount();
System.out.println("ItemCount: " + count);
}
@Override
public void afterChunkError(ChunkContext context) {
}
=======================================
BatchConfig.java
@Bean
public Step step3() { return this.stepBuilderFactory.get("step3").<Memdetail,Memdetail>chunk(20)
.reader(itemReader())
.writer(FFwriter())
.listener(listener())
.build(); }
@Bean
public ItemCountListener listener() { return new ItemCountListener();}
@Bean
public FlatFileItemWriter<Memdetail> FFwriter() {
FlatFileItemWriter<Memdetail> ffwriter = new FlatFileItemWriter<Memdetail>();
ffwriter.setResource(new FileSystemResource(fileName));
ffwriter.setHeaderCallback(new MemDetailHeaderCallback(cag));
ffwriter.setFooterCallback(new MemDetailFooterCallback(xxxx));
ffwriter.setLineAggregator(new DelimitedLineAggregator<Memdetail>() {
{
setFieldExtractor(new BeanWrapperFieldExtractor<Memdetail>() {
{
setNames(new String[] { "MBRdtls" });
}
});
}
});
return ffwriter;
}