zoukankan      html  css  js  c++  java
  • java改单个插入为批量插入

    单条insert into table value() 13W数据需要执行7小时

    变成inert into table value(),(),(),(),()

    inert into table value(),(),(),(),()

    inert into table value(),(),(),(),()

    这样,效率节省N倍 ,13W数据只需要3分钟

    @Override
    	public boolean addBRDforList(List<AiResultBai> data) {
    		boolean flag=false;
    		String sql="insert into `ai_result_baidu`(`id`,`data_base_id`,`sentiment`,`positive_prob`,`negative_prob`,`create_time`) values ";
    				//+ "values ( NULL,?,?,?,?,?)";
    		List<String> sbList = new ArrayList<>();//存储sql
    		StringBuffer sb = new StringBuffer();
    		DataBaseDao dbd=new DataBaseDaoImpl();
    		for(int i = 0 ; i < data.size() ; i++) {
    			//对数据进行分析,并得出base_id
    			if(i==0 || i%10==0) {
    				if (sb.toString().length() > 0) {//第一次不会进来
    					sbList.add(sb.toString());
    				}
    				sb=new StringBuffer();
    				sb.append(sql).append("(NULL,"+data.get(i).getData_base_id()+","+data.get(i).getSentiment()+","+data.get(i).getPositive_prob()+","+data.get(i).getNegative_prob()+",'"+data.get(i).getCreate_time()+"'"+")");
    			}else if(i == data.size() -1) {
    				sb.append(","+"(NULL,"+data.get(i).getData_base_id()+","+data.get(i).getSentiment()+","+data.get(i).getPositive_prob()+","+data.get(i).getNegative_prob()+",'"+data.get(i).getCreate_time()+"'"+")");
    				sbList.add(sb.toString());
    			}else {
    				sb.append(","+"(NULL,"+data.get(i).getData_base_id()+","+data.get(i).getSentiment()+","+data.get(i).getPositive_prob()+","+data.get(i).getNegative_prob()+",'"+data.get(i).getCreate_time()+"'"+")");
    			}
    	
    	}
    		System.out.println(sbList.size());
    		int j=0;
    		for (String string : sbList) {
    			j++;
    			System.out.println(j+"=="+"sql====="+string);
    			if(this.getconnection()) {
    				this.executeUpdate1(string);
    			
    			}
    			this.clossconnection();
    		}
    		if(sbList.size()==j) {
    			flag=true;
    		}
    
    		
    		System.out.println("共有Sql:"+sbList.size()+"条");
    		return flag;
    	}
    
  • 相关阅读:
    微软企业库调用Oracle存储过程返回(1个或多个)数据集
    (转)Oracle表空间
    HTML5操作
    完美实现 ASP.NET 2.0 中的URL重写伪静态(映射) &gt;(转载)的简介与内容
    HTML5 audio 详解
    步步为营:Asp.Net使用HttpWebRequest通知,抓取,采集(转)
    js cookie操作
    多线线程
    js with用法
    asp.net AllowSorting="true"仍然不能排序的原因
  • 原文地址:https://www.cnblogs.com/sincoolvip/p/10487440.html
Copyright © 2011-2022 走看看