首页 > 代码库 > java 分批读取list

java 分批读取list

  1. public static void main(String[] args) {  
  2.         List<Object> list = new ArrayList<Object>();  
  3.         for (int i = 0; i < 8000; i++) {  
  4.             list.add(i);  
  5.         }  
  6.         System.out.println(list);  
  7.         int init = 1000;// 每隔1000条循环一次  
  8.  
  9.         int total = list.size();  
  10.         int cycelTotal = total / init;  
  11.         if (total % init != 0) {  
  12.             cycelTotal += 1;  
  13.             if (total < init) {  
  14.                 init = list.size();  
  15.             }  
  16.         }  
  17.  
  18.         System.out.println("循环保存的次数:"+cycelTotal);//循环多少次  
  19.  
  20.         List list2 = new ArrayList();  
  21.  
  22.         for (int i = 0; i < cycelTotal; i++) {  
  23.             for (int j = 0; j < init; j++) {  
  24.                 if (list.get(j) == null) {  
  25.                     break;  
  26.                 }  
  27.                 list2.add(list.get(j));  
  28.             }  
  29.             System.out.println("保存1000条数据到数据库....");  
  30.             System.out.println(list2);//每次循环保存的数据输出  
  31.             //接下来写保存数据库方法  
  32.             //.............  
  33.             list.removeAll(list2);//移出已经保存过的数据  
  34.             list2.clear();//移出当前保存的数据  
  35.         }