java代码实现层
/**
* 为了减少性能
* 1.一次性拉取 需要同步的数据,放入内存中
* 2.为了防止,单次更新数据过大,分次更新;(建议一次更新100条)
*/
public void sysPaymentHistoryData() {
log.info("sysPaymentHistoryData start ...");
// 1.获取全部需要同步的信息
List<Map<String, Object>> allSyscInfo = payonlinePaymentApplyDetailDao.getSyscHistoryPaymentInfo();
log.info("sysPaymentHistoryData {}", JSON.toJSONString(allSyscInfo));
int totalSize = allSyscInfo.size();
int size = 100; // 每次 更新数量 100条
int fromIndex = 0;
int toIndex = 0;
for(fromIndex = 0; fromIndex < totalSize; fromIndex += size){
toIndex = fromIndex + size;
if(totalSize < toIndex){
batchUpdate(allSyscInfo.subList(fromIndex, totalSize));
break;
}
batchUpdate(allSyscInfo.subList(fromIndex, toIndex));
}