国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

java里面多線程,自己寫(xiě)的小例子

2019-11-14 15:16:17
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

    

  某天,在群里看見(jiàn)有個(gè)人 問(wèn) sqlService里面有2000萬(wàn)條數(shù)據(jù) 需要轉(zhuǎn)儲(chǔ)到orcale中。什么方式比較好,后來(lái)一琢磨非多線程莫屬啊~;

我這里沒(méi)有那么多數(shù)據(jù),所以我就模擬了下 一次存入10萬(wàn)條數(shù)據(jù),看有多快~;上代碼。

  在數(shù)據(jù)庫(kù)創(chuàng)建 表 t_test  2個(gè)字段 id  name

    定義一個(gè)類(lèi) 繼承Runnable 實(shí)現(xiàn)run方法

    public class Test implements Runnable{

     //實(shí)現(xiàn)run方法

    public void run() {
 
     //定義一個(gè)集合~這個(gè)集合是用來(lái)裝入存入失敗的數(shù)據(jù)
     List<Integer> list = new ArrayList<Integer>();
        //這里就是要設(shè)置存入的數(shù)據(jù) 200個(gè)
     for (int i = 0; i < 200; i++) {
        
        String sql="INSERT into t_test VALUES(null,"+i+")";
        try {
           //jdbc方式存入,這個(gè)是自己寫(xiě)的工具類(lèi)
           JDBCUtils.executeSQL(sql);
          } catch (Exception e) {
           //當(dāng)出現(xiàn)錯(cuò)誤的時(shí)候 會(huì)把沒(méi)有存入的裝入集合里面
           list.add(i);
            }

      }

      //判斷集合是否為空,不為空證明有數(shù)據(jù)沒(méi)有存入,利用遞歸的方式在進(jìn)行存入

       if(!list.isEmpty()){
        System.out.        dg(list);
       }

      }

       //需要進(jìn)行遞歸的操作

    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("進(jìn)行遞歸");
               dg(list2);
                }else{
   
                   System.out.println("結(jié)束");
                }
  
               }

        

public static void main(String[] args) {

    

     Thread thread = null;

        //開(kāi)啟500跳線程

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

          //需要開(kāi)啟線程的類(lèi)

           thread = new Thread(new Test());  

            //開(kāi)啟現(xiàn)成

             thread.start();

                  }

               }

           }

    這只是一個(gè)思路~轉(zhuǎn)儲(chǔ)數(shù)據(jù)庫(kù)的話(huà)其實(shí)和這個(gè)差不多;

 


發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 临汾市| 哈尔滨市| 湖南省| 恭城| 乐清市| 顺平县| 阿勒泰市| 大连市| 桃源县| 天门市| 河北区| 策勒县| 运城市| 囊谦县| 什邡市| 桦南县| 宽城| 九江县| 和田市| 冷水江市| 西乌珠穆沁旗| 嘉黎县| 河东区| 安图县| 马山县| 报价| 龙胜| 从化市| 无棣县| 黑山县| 鄂温| 潜江市| 永清县| 得荣县| 广灵县| 惠来县| 克拉玛依市| 扶绥县| 阿拉尔市| 喀什市| 康定县|