Spring Batch:我可以根据Size写入多个文件

时间:2013-03-09 11:07:35

标签: batch-processing spring-batch

我们正在开发Spring Batch Job,我们需要根据大小写入多个文件。例如,我们需要写入输出文件output1.txt,一旦我们达到5 MB的文件大小,它就必须写入output2.txt。 请建议

Spring批处理中是否有任何OOTB功能可以实现它,或者我们是否需要编写自定义代码来实现这一目标

1 个答案:

答案 0 :(得分:1)

Spring批处理项编写器,特别是FlatFileItemWriter不支持你需要的MaxFileSize属性,事实上,检查大小不是编写器的工作。

我会建议 1-)为一个文件实现编写器,并在第一步输出output.txt。 2-)实现第二步作为tasklet,它将output.txt作为输入,并将该文件拆分为所请求的文件大小。

这样您就可以将文件分割逻辑与主步骤分开。