list分组和数据批量插入都可,套进去就能用。
@Test
public void test() {
List<String> list = new ArrayList<>();
for (int i = 0; i < 10000; i++) {
list.add("hh");
}
System.out.println("===" + list.size());
if (list.size() <= 1000) {
} else {
int times = (int) Math.ceil(list.size() / 1000);
int end = list.size();
for (int i = 0; i <= times; i++) {
System.out.println("分批插入:" + i);
if (list.size() % 10 == 0) {
if (i == times) {
break;
}
List<String> sublist = list.subList(i * 1000, Math.min((i + 1) * 1000, list.size() - 1));
System.out.println("第一个参数==" + i * 1000);
System.out.println("第二个参数==" + Math.min((i + 1) * 1000, list.size() - 1));
System.out.println("==:" + sublist.size());
} else {
if (i != times) {
List<String> sublist = list.subList(i * 1000, Math.min((i + 1) * 1000, list.size() - 1));
System.out.println("第一个参数==" + i * 1000);
System.out.println("第二个参数==" + Math.min((i + 1) * 1000, list.size() - 1));
System.out.println("==:" + sublist.size());
} else {
System.out.println("第一个参数==" + i * 1000);
System.out.println("第二个参数==" + end);
List<String> sublist = list.subList(i * 1000,end);
System.out.println("最后=="+sublist.size());
}
}
}
}