0
내가 이해하는 한, 읽는 항목이 더 이상 없다면 리더는 'null'을 반환한다고 가정합니다. 이것이 독자를위한 계약이라면 프레임 워크가이 'null'을 인식하고 ReadListener의 afterRead를 호출하지 않을 것이라고 가정했습니다. 그러나 'null'매개 변수를 사용하여 'afterRead'를 호출하는 것 같습니다.스프링 배치 : ReadListener afterRead는 리더가 null을 반환하는 경우에도 호출됩니다.
스프링 배치 2.1.7을 사용하고 있습니다. 예상되는 동작인지 또는 여기에서 누락 된 것이 있는지 알려 주시기 바랍니다.
<batch:job id="job">
<batch:listeners>
<batch:listener ref="jobExecutionListener"></batch:listener>
</batch:listeners>
<batch:step id="myStep">
<batch:tasklet>
<batch:listeners>
<batch:listener ref="myReadListener" />
<batch:listener ref="myTransformerListener" />
<batch:listener ref="myWriteListener" />
</batch:listeners>
<batch:chunk reader="myReader" processor="myTransformer"
writer="myWriter" commit-interval="1000" />
</batch:tasklet>
</batch:step>
</batch:job>