`
Fred_Han
  • 浏览: 148201 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

jdbc 批量提交

 
阅读更多

场景:大批量新增数据

对比:逐笔提交和批次提交

 

记录数:2322条记录

测试结果:单笔提交:22938毫秒;批量提交:172毫秒

 

批量提交相关代码:

            connection = dataSource.getConnection();
            connection.setAutoCommit(false);
            // 组装新增sql
            String sql = assembleInsertSql();
            statement = connection
                    .prepareStatement(sql);
            for (int i = 0; i < beans.size(); i++) {
                // 组装statement参数
                aseembleStatement(statement, beans.get(i));
                statement.addBatch();
                // 每1000笔提交一次
                if (i % 1000 == 0) {
                    statement.executeBatch();
                    connection.commit();
                    statement.clearBatch();
                }
            }
            statement.executeBatch();
            connection.commit();

 

分享到:
评论

相关推荐

    JDBC批量插入 更新 删除等操作

    // 关闭自动提交,以便于后续的批量提交操作 String sql = "INSERT INTO adlogs (ip, website, yyyymmdd, hour, object_id) VALUES (?, ?, ?, ?, ?)"; PreparedStatement prest = conn.prepareStatement(sql, ...

    Java-JDBC【源码】批量插入操作、优化取消自动提交(提速40+倍)

    文章地址:...Java-JDBC【之】批量插入操作、优化取消自动提交(提速40+倍) 1.JDBC批量操作 2.两种实现方式 3.优化,取消自动提交 4.完整源码 《目录:Java-JDBC学习(编写中...)》 《幕》

    Mybatis与JDBC批量插入MySQL数据库性能测试

    在批量插入场景下,JDBC提供了Statement对象的addBatch()和executeBatch()方法,可以将多条插入语句一次性提交,减少与数据库的交互次数,从而提高效率。 Mybatis是一个轻量级的持久层框架,它简化了JDBC的复杂性,...

    jdbc批量插入大字段

    因此,"jdbc批量插入大字段"这个话题旨在探讨如何高效地通过Java JDBC来实现Blob字段的批量插入,以提高性能。 首先,我们需要了解JDBC(Java Database Connectivity),它是Java编程语言与各种数据库之间通信的...

    jdbc批量 (绝对经典)

    ### JDBC批量操作详解:效率与性能的提升策略 在数据库操作中,批量处理是一种常见的优化技术,用于提高数据处理的效率和性能。JDBC(Java Database Connectivity)作为Java应用程序与数据库交互的标准API,提供了...

    jdbc-批量插入数据

    本文将深入探讨如何使用JDBC进行批量插入数据,这在处理大量数据时能显著提高性能。 批量插入数据是数据库操作中常见的一种优化策略,特别是在数据分析、数据迁移或大数据处理等场景。传统的单条插入方式可能会导致...

    java实现jdbc批量插入数据

    本篇文章将详细介绍如何使用Java实现JDBC批量插入数据,并比较三种常见的JDBC批量插入编程方法。 **方法一:使用PreparedStatement加批量的方法** PreparedStatement是Statement的子接口,允许预编译SQL语句,这...

    jdbc批量操作数据分析与实例

    ### JDBC批量操作数据分析与实例 #### 一、引言 在日常软件开发中,数据库操作是必不可少的一部分。其中,批量操作作为一种高效的处理方式被广泛应用于数据处理任务中。本文将通过对一个具体的Java程序示例(使用...

    构造大量测试数据的方法(MySql)

    本文将深入探讨两种常用的方法:使用存储过程和多线程结合JDBC批量提交。 ### 1. 存储过程 MySQL的存储过程是一种预编译的SQL语句集合,可以在数据库端执行复杂的业务逻辑。在构造大量测试数据时,存储过程可以...

    mysql三种批量增加的性能分析

    在MySQL数据库中,批量增加数据通常涉及三种主要的方法:JDBC、JdbcTemplate和Hibernate。本文将分析这三种方法的性能,并提供相应的代码示例。 首先,我们来看JDBC。JDBC(Java Database Connectivity)是Java中与...

    SpringJDBC批量处理数据代码示例

    首先,批量处理数据的基本思想是将多条SQL语句合并到一起,一次性提交到数据库。这通常通过调用`batchUpdate`方法实现。在提供的代码示例中,可以看到两个使用`batchUpdate`的方法:`saveSpringJDBC`和`...

    JDBC的批量处理数据

    在Java数据库连接(Java Database Connectivity,简称JDBC)中,批量处理是一项重要的功能,它能够显著提高应用程序处理大量数据的效率。批量处理允许一次性发送多个SQL语句到数据库,而不是一条一条地执行,从而...

    《SQL预编译和批量提交对性能提升效果探索》测试代码

    在IT领域,尤其是在数据库管理与优化中,SQL预编译和批量提交是两个重要的概念,它们对于提升系统性能有着显著的影响。这篇测试代码的目的就是探讨并验证这两种技术如何提高SQL查询和数据处理的速度。 首先,让我们...

    JDBC数据库连接串总汇

    在IT领域,特别是软件开发与数据管理中,Java Database Connectivity(JDBC)是连接Java应用程序与各种数据库管理系统的重要桥梁。JDBC提供了一种标准的API,使得开发者能够使用SQL语句来查询、更新和管理数据库中的...

    jdbc2000,jdbc2005

    4. **Statement的批量参数化(PreparedStatement Batch with Parameters)**:批量处理带有参数的SQL语句,提高了批量操作的效率。 5. **并发控制(Concurrency Control)**:提供了读未提交(READ UNCOMMITTED)、...

    sqljdbc42 jdbc for java

    3. 批处理:允许一次性提交多个SQL语句,提高批量操作的性能。 4. 游标支持:提供多种游标类型,使开发者可以选择不同的数据读取模式,提高程序灵活性。 5. 复合主键和外键支持:便于构建复杂的数据库关系模型。 6. ...

    sql server2000 jdbc

    要优化JDBC性能,可以考虑预编译SQL语句(使用`PreparedStatement`)、批量操作(使用`addBatch()`和`executeBatch()`)、使用最新的JDBC驱动,以及合理设置连接池参数。 以上就是关于"sql server2000 jdbc"的相关...

    sqljdbc.jar

    5. **批处理**:使用`BatchUpdateException`批量执行多条SQL语句,提高效率。 6. **游标**:通过设置不同的游标类型,控制数据的读取方式,如只进、可滚动等。 7. **元数据查询**:获取数据库、表、列等的元数据信息...

    JDBC教程

    通过设置Connection的自动提交属性(`conn.setAutoCommit(false)`)来开启手动事务,并使用`commit()`和`rollback()`方法提交或回滚事务。 ### 5. JDBC批处理 批处理可以提高性能,通过批量执行多条SQL语句。可以...

    Jdbc实用教程

    JDBC支持两种事务隔离级别:自动提交和手动提交。默认情况下,每个SQL语句都会在一个单独的事务中执行(自动提交)。若需手动控制事务,可以调用`Connection.setAutoCommit(false)`来开启事务,并在所有操作完成后用...

Global site tag (gtag.js) - Google Analytics