js网站跳转代码,网站描述应该怎么写,素材中国免费素材网官网,网站建设公司一般几个人在使用saveAll()等方法时#xff0c;为了防止集合元素过大#xff0c;使用splitList将原集合#xff0c;分割成若干个小集合
import java.util.ArrayList;
import java.util.List;public class ListUtils {/*** 将集合拆分成若干个batch,并将batch存于新的集合** param list…在使用saveAll()等方法时为了防止集合元素过大使用splitList将原集合分割成若干个小集合
import java.util.ArrayList;
import java.util.List;public class ListUtils {/*** 将集合拆分成若干个batch,并将batch存于新的集合** param list 目标集合* param size batch大小* List m: [a, b, c, d, e, f, g]* - splitList(m, 3)* - [[a, b, c], [d, e, f], [g]]* return ListBatch*/public static T ListListT splitList(ListT list, int size) {//集合为空时,返回nullif (list null){return null;}//分割后的集合套集合ListListT l1 new ArrayList();//如果分割size集合size,那就没必要分割if (list.size() size){l1.add(list);} else {//集合sizeint s list.size();//x新的集合套集合的sizeint x s / size;//y新的集合套集合最后一个子集合的sizeint y s % size;if (y ! 0){x x 1;}int index 0;for (int i 0; i x; i) {ListT l2 new ArrayList();for (int j 0; j list.size(); j) {//按原集合给subList装元素,l2.add(list.get(index));index;//当达到sublist个数size装满时,跳出循环if (l2.size() size) {l1.add(l2);break;//最后一个subList时} else if (x l1.size() 1 y l2.size()) {l1.add(l2);break;}}}}return l1;}
}数据库批处理操作
if (bigList.size() 0) {for (ListCustomTableBean subList : ListUtils.splitList(bigList, 100)) {int rows customMapper.insertAll(subList);log.info(insert data size is rows);try {Thread.sleep(50);} catch (InterruptedException e) {log.error(e.printStackTrace(););}}
}