jdbc插入1000w条数据 批处理+事务

本文以一个包含1000万条记录的表为例,探讨如何通过JDBC的批处理和事务管理来提高数据插入效率。测试显示,当前实现已经有所提升,但还有进一步优化的空间,例如结合连接池和多线程技术。由于时间限制,这部分优化未在文中展开详细讨论。
摘要由CSDN通过智能技术生成

我们以这么一个表为例子,向这张表中插入1000w条数据

 

package com.ck.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.LinkedList;
import java.util.Random;


/**思路**/
//1、变多次提交为一次 
//2、使用批量操作 

/**
 * 插入1000W条数据
 * @author sansheng__
 * @version 1.0
 * @date 2018年9月15日 下午4:43:31
 * @copyright 三生__
 */
public class InsertBigData2 {

	public static void main(String[] args) throws SQLException {
		long startTime = System.currentTimeMillis();
		//1、使用连接池建立数据库连接
		MyDataSource dataSource = new MyDataSource();

		//2、获得连接
		Connection con = dataSource.getConnection();
		con.setAutoCommit(false);  //设置自动提交为false

		//3、建立SQL语句
		String sql = "insert into student1 values(?,?,?,?,?,?)";	

		//4、建立sql对象
		
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值