我有要求使用Spring Batch編寫多個文件。第一個文件將根據數據庫表中的數據寫入。第二個文件只包含寫入第一個文件的記錄數。我如何創建第二個文件?我不知道是否org.springframework.batch.item.file.MultiResourceItemWriter
是我的選擇,因爲我認爲它會根據數據寫入多個文件,它會在多個文件中寫入數據塊。如果我在這裏錯了,請糾正我。使用彈簧批處理寫入多個文件(不同的內容)
如果可能的話,請提供一些帶示例代碼的選項。
我有要求使用Spring Batch編寫多個文件。第一個文件將根據數據庫表中的數據寫入。第二個文件只包含寫入第一個文件的記錄數。我如何創建第二個文件?我不知道是否org.springframework.batch.item.file.MultiResourceItemWriter
是我的選擇,因爲我認爲它會根據數據寫入多個文件,它會在多個文件中寫入數據塊。如果我在這裏錯了,請糾正我。使用彈簧批處理寫入多個文件(不同的內容)
如果可能的話,請提供一些帶示例代碼的選項。
你有兩個選擇:
您可以使用CompositeItemWriter這就要求項目的作家的集合中定義的順序,所以你可以定義一個項目的作家,這將編寫一個基於數據從DB和第二記錄將計記錄並將其寫入另一個文件。
您可以將數據寫入到第一步文件,完成整個文件並保存到某個地方,你可以保存記錄的計數器,如果這是你需要StepContext(common batch patterns和滾動到11.8將數據傳遞給未來的步驟)並讀入新的Tasklet
計數器並保存到新文件中。
如果你想要去的選項1,我認爲是可以檢查批處理作業的配置this example與CompositeItemWriter
嘗試聽衆正確的選擇,一個你的工作完成後,你可以打電話listerner寫sencond文件 – Panther 2015-03-30 17:54:28