对于批量操作数据库,比如list批量更新、插入等。如果一次传入list太大比如2W数据这样数据库的压力会很大。可以利用list的subList方法实现分页分批效果:
List<Integer> listPageExpress = new ArrayList<Integer>();
List<Integer> pageList = new ArrayList<Integer>();
listPageExpress.add(1);
listPageExpress.add(2);
listPageExpress.add(3);
//总页数
int listCount = listPageExpress.size();
int pageSize=2;//一页数量
int pageNumer= listCount%pageSize==0?listCount/pageSize:listCount/pageSize+1;
for(int i=0 ;i<pageNumer;i++) {
int start = i * pageSize;
int end = start + pageSize;
//防止索引越界
if (i==(pageNumer-1)) {
end = listPageExpress.size();
}
//实现分页
pageList = listPageExpress.subList(start, end);
//写业务逻辑传参pageList参数
System.out.println("分页list长度:"+pageList.size());
}