如何使用Spring-Batch从单个项目/行执行多次写入?

时间:2015-07-17 16:13:49

标签: spring-batch

如何使用spring-batch从给定数据的单个项目执行多次写入?

我是否需要读取输入x次并创建对象然后写入或读取输入一次并执行多次写入?

输入:

  • id,label1,detail1,detail2,detail3

OUTPUT1:

  • id,label1

OUTPUT2:

  • id,detail1
  • id,detail2
  • id,detail3

1 个答案:

答案 0 :(得分:0)

Spring Batch提供CompositeItemWriter,其中包含ItemWriter个列表。这位作者依次给每个作者打电话。因此,如果我有一个需要以不同格式写入两个不同文件的项目,我可以使用CompositeItemWriter将每个项目写入每个文件。在您的情况下,您使用多个JdbcBatchItemWriter

您可以在此处的文档中详细了解CompositeItemWriterhttp://docs.spring.io/spring-batch/trunk/apidocs/org/springframework/batch/item/support/CompositeItemWriter.html

ItemWriter的示例显示在此处的Spring Batch示例中:https://github.com/spring-projects/spring-batch/blob/master/spring-batch-samples/src/main/resources/jobs/compositeItemWriterSampleJob.xml