防止大批量数据更新,造成数据库卡死,分页批量修改 :
public void statusPage(List<String> queryList, String userCode) throws Exception{
int step = 3000; // 一次最多存储3000条
int startIndex = 0;
// 页码 = ( 需要存储的数据量 / 最大存储数量 )+1
int count = (int) Math.floor(queryList.size() / step) + 1;
for (int i = 0; i < count; i++) {
//整除时
if (startIndex + step <= queryList.size()){
this.statusSave(queryList.subList(startIndex, step-1+startIndex), userCode);
startIndex += step;
}else{ //有余数时
this.statusSave(queryList.subList(startIndex, queryList.size()), userCode);
}
}
}