2015-03-30 44 views
0

我有要求使用Spring Batch編寫多個文件。第一個文件將根據數據庫表中的數據寫入。第二個文件只包含寫入第一個文件的記錄數。我如何創建第二個文件?我不知道是否org.springframework.batch.item.file.MultiResourceItemWriter是我的選擇,因爲我認爲它會根據數據寫入多個文件,它會在多個文件中寫入數據塊。如果我在這裏錯了,請糾正我。使用彈簧批處理寫入多個文件(不同的內容)

如果可能的話,請提供一些帶示例代碼的選項。

+0

嘗試聽衆正確的選擇,一個你的工作完成後,你可以打電話listerner寫sencond文件 – Panther 2015-03-30 17:54:28

回答

3

你有兩個選擇:

  1. 您可以使用CompositeItemWriter這就要求項目的作家的集合中定義的順序,所以你可以定義一個項目的作家,這將編寫一個基於數據從DB和第二記錄將計記錄並將其寫入另一個文件。

  2. 您可以將數據寫入到第一步文件,完成整個文件並保存到某個地方,你可以保存記錄的計數器,如果這是你需要StepContextcommon batch patterns和滾動到11.8將數據傳遞給未來的步驟)並讀入新的Tasklet計數器並保存到新文件中。

如果你想要去的選項1,我認爲是可以檢查批處理作業的配置this exampleCompositeItemWriter

相關問題