ItemProcessorを実装して、processメソッドでnullを返すと、Writerに渡らないためスキップされる。
実装例
public class SampleItemProcessor implements ItemProcessor<SampleEntity, SampleEntity> {
/**
* 読み飛ばすかどうか
*/
@Override
public SampleEntity process(SampleEntity item) throws Exception {
if (item.isInvalid()) {
return null;
}
return item;
}
}
設定例
<batch:step id="sampleStep">
<batch:tasklet >
<batch:chunk writer="sampleWriter" reader="sampleReader" processor="sampleItemProcessor" commit-interval="1000" />
</batch:tasklet>
</batch:step>
<bean id="sampleItemProcessor" class="jp.canetrash.sample.SampleItemProcessor"/>