1

実装する必要があるバッチ プロセスがあります。私のクライアントが好むバッチ フレームワークは Spring Batch です。

論理的なプロセスは

  1. 既知の状態でデータベースからレコードのロードを選択する
  2. レコードをファイルに書き込む
  3. ファイルに書き込まれたレコードの状態を更新する

プロセスは非常に多くのレコードに触れる可能性が高く、更新トランザクションをできるだけ短くしたいので、私の意図した設計は

  1. ドライビング クエリ パターンを使用して候補行のリストを生成する
  2. ステップ 1 の結果を反復して出力ファイルに書き込みます
  3. 取引開始
  4. ステップ 1 の結果をもう一度繰り返し、データベース内の行の状態を更新します。
  5. 取引終了

春のJdbcCursorItemReaderを使用するのではなく、既存のデータアクセスレイヤーを使用してデータベースの作業を行うつもりです。

これは Spring Batch で簡単に対処できるものですか、それとももう一度考える必要がありますか?

前もって感謝します

デイブ

4

1 に答える 1

0

実際、これはCommon Batch Patternsドキュメントで説明されています。セクション11.4 Driving Query Based ItemReadersを読むことができます

ファイル出力ライターとデータベース更新ロジック、および最初のステップから入力を受け取るプロセッサを持つCompositeItemWriterを使用することで、必要な動作をシミュレートできます。

これが役立つことを願っています

于 2012-08-09T22:29:58.257 に答える