如何跳过当前字段集并继续春季批处理中的下一个字段集



我在春季批中有自己的fieldsetmapper。我想跳过一些符合条件的行。如果我在mapFieldSet(FieldSet FieldSet)中返回null, itemreader将停止。这意味着剩余的行不会被处理。

那么如何跳过mapFieldSet中的行呢?

如果文本行内容形式正确,则FieldSetMapper.mapFieldSet()进行的解析返回一个有效对象;返回的对象应该在ItemProcessor中"过滤掉"(符合您的业务标准),如"过滤记录"一章所述。

可以抛出异常并配置批处理读取器的skippable-exception-classes。记住也要配置skip-limit:

<step id="step1">
   <tasklet>
      <chunk reader="flatFileItemReader" writer="itemWriter"
             commit-interval="10" skip-limit="10">
         <skippable-exception-classes>
            <include class="org.springframework.batch.item.file.FlatFileParseException"/>
         </skippable-exception-classes>
      </chunk>
   </tasklet>
</step>

详情在此:http://docs.spring.io/spring-batch/reference/html/configureStep.html

相关内容

  • 没有找到相关文章

最新更新