在java中1000条数据如何分3提交,也就是每次只能提交400条数据

能否不用线程,直接用循环做

楼主可以哦,用线程只是为了提高效率,你完全可以用循环!!!!

启用线程分页操作

1.定义线程类



class ThreadTest implements Runnable{
  private int start=0;
  private int end=0;
  //省略get,set方法

  //添加分页构造
  public ThreadTest(int start,int end){
   
    //省略this.xx=xx;
  }

 }
 
 //重写run方法

  public void run(){
  
  //添加处理数据方法
    dealData();
  }
  public void dealData(){
  
   List<xxx> list=new ArrayList<xxx>();//1000条list
   Collection.sort(list);//给list集合排序
   for(int i=start;i<end;i++){
   
      xxx bean=list.get(start);
      //添加提交数据的代码方法
      //上面是逐条提交,你也可以进行批量操作,批量时别忘了事物控制哦
   
   }
  
  }
}

2.定义业务接入线程入口类

   class acessToThread{

    static final int threadnum=3;

     int start=0;

     int end=0;

     int size=400;


   for(int i=0;i<threadnum;i++{

       this.start=i*size;

       this.end=start+size;

       if(end==1200){this.end=1000;}

       ThreadTest test=new ThreadTest(start,size);

        new Thread(test,"线程"+i).start();

   }

  

    


  }

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-12-06
做个缓存,超过400,就放到队列中等待.
第2个回答  2013-12-06
使用批处理!自己管理事务的提交!