我正在使用Spring批處理。批次將從數據庫中每次讀取幾條記錄,看起來像這樣在java中合併periodes
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
*要合併的periodes。
我想要做的是合併具有相同代碼和相同personId,但不是不同代碼或personId的periodes。
第一個問題是我可以大塊這一步嗎?問題是commite間隔是靜態的,我可能無法獲得一個塊中的所有priodes。是否有可能根據一個人在桌上有多少記錄來創建動態塊?
下一個問題是合併期間的最佳方式是什麼?如果toDate爲31-12,下一個時間段從明年的01-01開始,則合併期間。
看看http://stackoverflow.com/questions/8837487/how-to-process-logically-related-rows-after-itemreader-in-springbatch – 2012-02-11 21:52:15