一.场景
1.业务中有条需求:将A表中得数据存入B表。
2.操作:传统方式就是获取A表得数据然后一条一条插入B表,但是当A表数据量很大时,这种操作无疑是很耗费时间和资源得;
所以我们需要进行优化处理,采用JDBC批量执行得方式,只需要调用PreparedStatement.addBatch()方法与PreparedStatment.excuteBatch()联合使用即可;
二.实现
1.在方法demoOne()和demoBath()可以看出,如果进行批量操作就需要调用addBath()方法,并且需要先关闭自动提交,然后调用excuteBath()进行执行,即可。
import java.sql.*;
import java.util.List;
public class BathExcuteTest {
Connection connection=null;
PreparedStatement statement=null;
ResultSet resultSet=null;
String jdbcDriver="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost:3306/test";
String username="root";
String password="root";
public void demoOne(int id,String name,String grep){//此方法为普通得单条操作
try {
Class.forName(jdbcDriver);
connection= DriverM