List分批处理数据
今天在项目中遇到接口对传入的List参数限制30大小,但是之前查出的结果List.size()= 49。最后对List进行分批传入接口方法。
伪代码如下:
ModelService modelService = new ModelService();
List dataList = new ArrayList();
List upateList = new ArrayList();
int pointsDataLimit = 30;
XhotelRatesIncrementRequest rq = new XhotelRatesIncrementRequest();
for (int i = 0; i < dataList.size(); i++) {//分批次处理
ModelDo modelDo = new ModelDo();
modelDo .setId(dataList.get(i).getId());
modelDo .setTid(dataList.get(i).getTid());
upateList.add(modelDo);
if (pointsDataLimit == upateList.size() || i == dataList.size() - 1) {
String result = modelService.update(upateList);
upateList.clear();
}
}