バックグラウンド
私は Spring Batchジョブを持っています:
FlatFileItemReader
- ファイルから一度に 1 行ずつ読み取りますItemProcesor
- 行をファイルから に変換しList<MyObject>
、List
. つまり、ファイル内の各行はList<MyObject>
(ファイル内の 1 行が多数の出力行に変換される) に分割されます。ItemWriter
List<MyObject>
-をデータベース テーブルに書き込みます。(この 実装を使用して、プロセッサとデリゲートから受け取ったリストを にアンパックしましたJdbcBatchItemWriter
)
質問
List
ポイント 2) で、プロセッサは 100000 個のMyObject
インスタンスを返すことができます。- ポイント 3) で、デリゲートは100000 個のオブジェクト
JdbcBatchItemWriter
全体をデータベースに書き込むことになります。List
私の質問は次のとおりJdbcBatchItemWriter
です。カスタムバッチサイズは許可されていません。すべての実際的な目的のために、ステップのバッチサイズ = コミット間隔。これを念頭に置いて、データベースへの書き込みを許可し、構成可能なバッチサイズを許可するSpring Batchで利用可能な別の実装はありますか? そうでない場合、これを達成するために自分でカスタムライターを作成するにはどうすればよいですか?ItemWriter