Java往oracle插入百万数据,不到5秒!

  java自带的批量操作,就可以很好的支持大量数据的处理。相比c#,简单很多。c#要使用oracle提供的ODP.NET,效率才很高,但是代码却很复杂。总之,在这方面,c#没得比。当然,这里的表是没加索引的,,加了索引,效率会变慢,但是还是很高效。

1 long startTime=System.currentTimeMillis(); 2 3Connection conn=null; 4try{ 5conn=getConnection(); 6conn.setAutoCommit(false); 7 8PreparedStatement stmt=conn.prepareStatement(“INSERT INTO product_tmp VALUES (?,?,?,?)”);num=0;12for(Values v:datas){13num++;14stmt.setInt(1, v.getId());15stmt.setString(2, v.getStr1());16stmt.setString(3, v.getStr2());17stmt.setString(4, v.getStr3());18 stmt.addBatch();(num>50000){21 stmt.executeBatch();22 conn.commit();23num=0;24 }25 }26 stmt.executeBatch();27 conn.commit();28}catch(Exception e){29 conn.rollback();30 e.printStackTrace();31}finally{32 closeConnection(conn);33long endTime=System.currentTimeMillis();34System.out.println(“方法执行时间:”+(endTime-startTime)+”ms”);35}

梦想让我与众不同,奋斗让我改变命运!

Java往oracle插入百万数据,不到5秒!

相关文章:

你感兴趣的文章:

标签云: