作用:大批量处理数据,提高效率。(减少程序和数据库的交互)
psmt.addBatch(); //添加批处理,数据放到批处理 |
psmt.executeBatch(); //执行批处理 |
psmt.clearBatch(); //清除批处理 |
步骤:
Connection conn=null; PreparedStatement psmt=null; //准备sql语句 String sql="...."; |
try { //加载jdbc驱动 Class.forName("com.mysql.cj.jdbc.Driver"); //获取连接对象,与数据库建立连接 conn= DriverManager.getConnection("jdbc:mysql://localhost:3306/empDB?serverTimezone=UTC","root",""); |
//获取PreparedStatement命令对象,发送sql语句 psmt = conn.prepareStatement(sql); //设置占位符的值 psmt.setxxx(); //添加到批处理 psmt.addBatch(); |
//一次性执行批处理的数据 psmt.executeBatch(); |
//清除批处理 psmt.clearBatch(); |
} catch (ClassNotFoundException e) { throw new RuntimeException(e); } catch (SQLException e) { throw new RuntimeException(e); } |
finally { //关闭 try { psmt.close(); } catch (SQLException e) { throw new RuntimeException(e); } try { conn.close(); } catch (SQLException e) { throw new RuntimeException(e); } |