Spring Batch - Read once and write twice

五迷三道 提交于 2019-12-02 03:05:24

Spring Batch defines independent steps for processing. Each step is responsible for their input, processing, and output. Because of this, I'd structure the job something like:

<job id="myJob">
    <step id="step1" next="step2">
        <tasklet>
            <chunk reader="reader" writer="typeAwriter"/>
        </tasklet>
    </step>
    <step id="step2">
        <tasklet>
            <chunk reader="reader" processor="processor" writer="typeBwriter"/>
        </tasklet>
    </step>
</job>

With the above configuration, the reader would be a step scoped reader that reads in type A. The typeAwriter writes out type A. The processor is the processor that converts type A to type B. The typeBwriter writes type B. Since the processor returns a list of type B, the typeBwriter would need to be a custom implementation that loops over the lists that the processor returns (typeBwriter would take a List<List<TypeB>>).

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!