サイズに基づいて複数のファイルに書き込む必要があるSpring Batch Jobに取り組んでいます。たとえば、出力ファイル output1.txt に書き込む必要があり、ファイル サイズが 5 MB に達したら、output2.txt に書き込む必要があります。提案してください
それを達成できるSpringバッチのOOTB機能はありますか、それともこれを達成するためにカスタムコードを書く必要がありますか?
サイズに基づいて複数のファイルに書き込む必要があるSpring Batch Jobに取り組んでいます。たとえば、出力ファイル output1.txt に書き込む必要があり、ファイル サイズが 5 MB に達したら、output2.txt に書き込む必要があります。提案してください
それを達成できるSpringバッチのOOTB機能はありますか、それともこれを達成するためにカスタムコードを書く必要がありますか?
Spring バッチ アイテム ライター、特に FlatFileItemWriter は、必要な MaxFileSize プロパティをサポートしていません。実際、サイズを確認するのはライターの仕事ではありません。
1-) ライターを 1 つのファイルに実装し、最初のステップで output.txt を出力することをお勧めします。2-) output.txt を入力として受け取り、このファイルを要求されたファイル サイズに分割するタスクレットとして 2 番目のステップを実装します。
このようにして、ファイル分割ロジックをメイン ステップから分離します。