开发过程中遇到性能问题,数据量比较大的时候,需对数据进行分割处理
举个示例,如下:
/**
* 数据大于100条处理
*
* @return map
*/
public Map<String, List<WsWorker>> setGreat100(List<entity> list) {
int listSize = list.size();
int toIndex = 100;
//用map存起来新的分组后数据
Map<String, List<entity>> map = new HashMap<>();
int keyToken = 0;
for (int i = 0; i < list.size(); i += 100) {
//作用为toIndex最后没有100条数据则剩余几条newList中就装几条
if (i + 100 > listSize) {
toIndex = listSize - i;
}
List<entity> newList = workers.subList(i, i + toIndex);
map.put("entity" + keyToken, newList);
keyToken++;
}
return map;
}