首页 > 数据库技术 > 详细

JAVA JDBC 批量操作

时间:2020-03-04 12:01:06      阅读:88      评论:0      收藏:0      [点我收藏+]

批量操作,可以使用批量操作,和手动提交实务增加速度

批量操作和手动提交

            //设置不允许自动提交数据
            conn.setAutoCommit(false);
            
            String sql = "insert into goods(name)values(?)";
            ps = conn.prepareStatement(sql);
            for(int i = 1;i <= 1000000;i++){
                ps.setObject(1, "name_" + i);
                
                //1."攒"sql
                ps.addBatch();
                
                if(i % 500 == 0){
                    //2.执行batch
                    ps.executeBatch();
                    
                    //3.清空batch
                    ps.clearBatch();
                }
                
            }
            
            //提交数据
            conn.commit();

 

 

技术分享图片
//批量插入的方式四:设置连接不允许自动提交数据
    @Test
    public void testInsert3() {
        Connection conn = null;
        PreparedStatement ps = null;
        try {
            
            long start = System.currentTimeMillis();
            
            conn = JDBCUtils.getConnection();
            
            //设置不允许自动提交数据
            conn.setAutoCommit(false);
            
            String sql = "insert into goods(name)values(?)";
            ps = conn.prepareStatement(sql);
            for(int i = 1;i <= 1000000;i++){
                ps.setObject(1, "name_" + i);
                
                //1."攒"sql
                ps.addBatch();
                
                if(i % 500 == 0){
                    //2.执行batch
                    ps.executeBatch();
                    
                    //3.清空batch
                    ps.clearBatch();
                }
                
            }
            
            //提交数据
            conn.commit();
            
            long end = System.currentTimeMillis();
            
            System.out.println("花费的时间为:" + (end - start));//20000:83065 -- 565
        } catch (Exception e) {                                //1000000:16086 -- 5114
            e.printStackTrace();
        }finally{
            JDBCUtils.closeResource(conn, ps);
            
        }
        
    }
完整代码

 

JAVA JDBC 批量操作

原文:https://www.cnblogs.com/superxuezhazha/p/12408542.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!