2016-11-02 18 views
0

私はDBから項目を読み込み、可能であれば項目が後の「バッチサイズ」を表すページング方法で、フィルタリングなどの処理ステップを実行するような要件を持っていますそれから私はそれを休憩サービスに送るためにアイテムを蓄積したいと思います。ここで私はそれをバッチで送ることができます。それらのうちのn個を1つずつ順番に表示します。集約プロセッサーまたは集約リーダー

これをステップレベルで並列化することは、私がやっていることですが、バッチ処理を行う方法がわかりません。リストを返すリーダーとリストを受け取るプロセッサを実装する必要がありますか?もしそうなら、私はあなたが処理された番号項目の適切なアカウントを持っていないことを読む。

私は修正をハックするのではなく、最も適切な春のバッチ方法でそれを行う方法を見つけようとしています。私は読者に状態を保つ必要があると仮定し、より良い方法がないか疑問に思っています。

答えて

2

アグリゲーションプロセッサのようなものは使用できません。読み取られるすべての単一項目は単一項目として処理されます。

ただし、アイテムをグループ化し、それらをグループ全体として転送するReaderを実装できます。アイデアを得るには、どうすればこの質問への私の答えを見てくださいSpring Batch Processorまたはディーンクラークの答えSpring Batch-How to process multiple records at the same time in the processor?

両方ともSpringBatchのSingleItemPeekableItemReaderを使用します。