1

バックグラウンド

私は Spring Batchジョブを持っています:

  1. FlatFileItemReader- ファイルから一度に 1 行ずつ読み取ります
  2. ItemProcesor- 行をファイルから に変換しList<MyObject>List. つまり、ファイル内の各行はList<MyObject>(ファイル内の 1 行が多数の出力行に変換される) に分割されます。
  3. ItemWriterList<MyObject>-をデータベース テーブルに書き込みます。(この 実装を使用して、プロセッサとデリゲートから受け取ったリストを にアンパックしましたJdbcBatchItemWriter)

質問

  • Listポイント 2) で、プロセッサは 100000 個のMyObjectインスタンスを返すことができます。
  • ポイント 3) で、デリゲートは100000 個のオブジェクトJdbcBatchItemWriter全体をデータベースに書き込むことになります。List

私の質問は次のとおりJdbcBatchItemWriterです。カスタムバッチサイズは許可されていません。すべての実際的な目的のために、ステップのバッチサイズ = コミット間隔。これを念頭に置いて、データベースへの書き込みを許可し、構成可能なバッチサイズを許可するSpring Batchで利用可能な別の実装はありますか? そうでない場合、これを達成するために自分でカスタムライターを作成するにはどうすればよいですか?ItemWriter

4

3 に答える 3