分隔List,划分为多个小List,分批插入数据库,这样子操作对数据库的压力比较小
private static final Integer splitSize = 1000;
public <T> List<List<T>> subList(List<T> list) {
List<List<T>> lists = new ArrayList<>();
int size = list.size();
if (size <= splitSize) {
lists.add(list);
return lists;
}
int number = size / splitSize;
//完整的分隔部分
for (int i = 0; i < number; i++) {
int startIndex = i * splitSize;
int endIndex = (i +1) * splitSize;
lists.add(list.subList(startIndex, endIndex));
}
//最后分隔剩下的部分直接放入list
if (number * splitSize == size) {
return lists;
}
lists.add(list.subList(number * splitSize, size));
return lists;
}
--------------------------------------------------------------------------------------------------------------------------------------THE END
GOOD LUNCK
本文介绍了一种将大量数据分隔成较小批次并批量插入数据库的方法,以减轻数据库的压力。通过将原始数据列表划分成多个小列表,每批包含1000条记录,有效地提升了数据处理效率。
1万+

被折叠的 条评论
为什么被折叠?



