批处理
我们用的PreparedStatement内部
是有集合的
所以我们可以用循环往PreparedStatement对象里面
添加sql参数
它自己是有模板的
用一组参数和模板可以匹配出一条sql语句
然后我们就调用它的批处理方法
这样就完成了向数据库发送
我们先要添加一个属性
地址后面/db_abc?rewriteBatchedStatements=true
也就是打开批处理
public static void main(String[] args) {
try {
//加载驱动类
Class.forName("com.mysql.jdbc.Driver");
//地址
String url = "jdbc:mysql://localhost:3306/abc?useSSL=false&rewriteBatchedStatements=true";
//账号和密码
String username = "root";
String password = "123";
//连接数据库
Connection connection = DriverManager.getConnection(url, username, password);
//来一条sql语句
String sql = "insert into tb_person values(?,?,?)";
//获取PreparedStatement对象
PreparedStatement statement = connection.prepareStatement(sql);
//循环设置参数并添加
for (int i = 216; i < 1000; i++) {
statement.setInt(1, i + 1);
statement.setString(2, "abc" + i);
statement.setInt(3, i / 2);
statement.addBatch();
}
//执行更新
statement.executeBatch();
//关闭
statement.close();
connection.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}