conn = JDBCUtils.getConnection();
String sql = "insert into goods(name)values(?)";
ps = conn.prepareStatement(sql);
for(int i = 1; i<= 20000;i++){
ps.setObject(1, "name_" + i);
// 1.攒sql
ps.addBatch();
if(i % 500 == 0){
//2.执行batch
ps.executeBatch();
//3.清空batch
ps.clearBatch();
}
}
优化执行速度:
1.使用addBatch() / executeBatch() / clearBatch()
2.mysql服务器默认是关闭批处理的,我们需要通过一个参数,让mysql开启批处理的支持。
?rewriteBatchedStatements=true 卸载配置文件的url后面
3.使用更新的mysql 驱动:mysql-connector-java-5.1.37-bin.jar
继续优化执行速度:
设置连接不允许自动提交数据,部分代码如下:
conn = JDBCUtil