私はSpringバッチを扱っています。バッチはこのようなデータベースから毎回複数のレコードを読み込みますJavaのマージ期間
personId | fromDate | toDate | someCode
* 100 | 05-05-2011 | 31-12-2011 | A
* 100 | 01-01-2012 | 31-12-2012 | A
100 | 01-01-2013 | 03-03-2013 | B
101 | 05-05-2011 | 31-12-2011 | A
*マージする期間。
私がしたいのは、同じコードと同じpersonIdを持つが、異なるコードやpersonIdは持たないピリオドをマージすることです。
最初の質問は、私はこのステップをチャンクできますか?問題は、コミット間隔は静的で、私は人のためにすべてのプリオードを1つのチャンクに入れないかもしれないということです。ある人のレコード数に基づいてテーブルに動的チャンクを入れることは可能ですか?
次の質問は、期間をマージする最良の方法は何ですか? toDateが31-12で、次の期間が来年の01-01から始まる場合は、ピリオドをマージする必要があります。
http://stackoverflow.com/questions/8837487/how-to-process-logically-related-rows-after-itemreader-in-springbatch –