- 为什么需要批量操作
如果业务中需要执行多次某一条sql语句,每次只执行一条效率太低。
如下图
![在这里插入图片描述](https://img-blog.csdnimg.cn/d04724897e1d4638a082e4b2a27e2725.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAQ1bplK7pg73noo7kuoY=,size_20,color_FFFFFF,t_70,g_se,x_16)
- 批处理操作
public class ManyDemo2 {
public static void main(String[] args) {
try(Connection conn = DBUtils.getConn()){
String sql="insert into user values(?,?)";
PreparedStatement ps = conn.prepareStatement(sql);
for (int i=1;i<=110;i++){
ps.setString(1,"user"+i);
ps.setString(2,"pwd"+i);
ps.addBatch();
if (i%20==0){
ps.executeBatch();
}
}
ps.executeBatch();
System.out.println("over");
}catch (Exception e){
e.printStackTrace();
}
}
}
- ps.addBatch();添加到批中
- ps.executeBatch();将批中的数据发送到数据库