我应该对我的应用程序进行压力测试,我需要在表中提供6000万条记录。我正在遵循的方法是,首先我正在初始化 Connection 类的实例,然后使用该连接通过 PreparedStatement 使用for循环插入数据,并且每次500行插入我正在提交连接并重置它。
使用此功能,我每分钟可以插入约150条记录。我只是想知道是否有更优化的方式来执行它,以便执行所需的时间最少
答案 0 :(得分:2)
使用jdbc批量插入:
PreparedStatement ps = conn.prepareStatement(sql);
int count = 0;
for(loop construct here) {
count++;
ps.setString(1,someString);
// ... and so forth
ps.addBatch();
if (count%500 ==0)
ps.executeBatch()
}
ps.executeBatch();