你的位置:首页 > Java教程

[Java教程]java里面多线程,自己写的小例子


    

  某天,在群里看见有个人 问 sqlService里面有2000万条数据 需要转储到orcale中。什么方式比较好,后来一琢磨非多线程莫属啊~;

我这里没有那么多数据,所以我就模拟了下 一次存入10万条数据,看有多快~;上代码。

  在数据库创建 表 t_test  2个字段 id  name

    定义一个类 继承Runnable 实现run方法

    public class Test implements Runnable{

     //实现run方法

    public void run() {
 
     //定义一个集合~这个集合是用来装入存入失败的数据
     List<Integer> list = new ArrayList<Integer>();
        //这里就是要设置存入的数据 200个
     for (int i = 0; i < 200; i++) {
        
        String sql="INSERT into t_test VALUES(null,"+i+")";
        try {
           //jdbc方式存入,这个是自己写的工具类
           JDBCUtils.executeSQL(sql);
          } catch (Exception e) {
           //当出现错误的时候 会把没有存入的装入集合里面
           list.add(i);
            }

      }

      //判断集合是否为空,不为空证明有数据没有存入,利用递归的方式在进行存入

       if(!list.isEmpty()){
        System.out.println("进来了");
        dg(list);
       }

      }

       //需要进行递归的操作

    public void dg(List<Integer> list){
       ArrayList<Integer> list2 = new ArrayList<Integer>();
          for (Integer i : list) {
             String sql="INSERT into t_test VALUES(null,"+i+")";
               try {
                  JDBCUtils.executeSQL(sql);
                 } catch (Exception e) {
    
                  list2.add(i);
                 }
            }
            if(!list2.isEmpty()){
   
               System.out.println("进行递归");
               dg(list2);
                }else{
   
                   System.out.println("结束");
                }
  
               }

        

public static void main(String[] args) {

    

     Thread thread = null;

        //开启500跳线程

      for (int i = 0; i < 500; i++) {

          //需要开启线程的类

           thread = new Thread(new Test());  

            //开启现成

             thread.start();

                  }

               }

           }

    这只是一个思路~转储数据库的话其实和这个差不多;

 




印度尼西亚旅游团报价优惠印度尼西亚蜜月旅游行程参考印度尼西亚特价旅游多少钱到印度尼西亚游费用报价大全印度尼西亚自助游攻略2015远离尘嚣 那些秋色最美的藏寨 西安钟鼓楼的前世今生 游记攻略 西安钟鼓楼的前世今生 历史传说 深圳大芬油画村怎么去? 南岭公园韶关怎么去?韶关到南岭森林公园在哪坐车? 韶关南岭森林公园团购价格?南岭森林公园多少人可以团购? 广州塔名人蜡像馆怎么去?广州塔世界名人蜡像馆旅游路线? 广州塔蜡像馆门票多少钱?广州塔世界名人蜡像馆多少钱一个人? 广州中山纪念堂演出地址?中山纪念堂演出价格? 广州中山纪念堂门票包含看演出吗?中山纪念堂演出时间? 中山纪念堂演出信息?广州中山纪念堂演出门票多少钱? 广州中山纪念堂演出时间?中山纪念堂演出内容? 中国辽宁沈阳餐饮小吃:杨家吊炉饼鸡蛋糕 中国辽宁沈阳餐饮小吃:老山记海城馅饼 红色圣地:遵义会议会址 让你垂涎欲滴的9大贵州小吃 EXIDE 143-324-022 Datasheet EXIDE 143-324-022 Datasheet EXIDE 143-321-023 Datasheet EXIDE 143-321-023 Datasheet EXIDE 143-321-022 Datasheet EXIDE 143-321-022 Datasheet 去希腊旅游行程 去希腊旅游行程 去希腊旅游行程 组团去希腊旅游 组团去希腊旅游 组团去希腊旅游 深圳到希腊旅游 深圳到希腊旅游 深圳到希腊旅游