未批处理结果
批处理结果[效果明显]
未进行批处理
public static void main(String[] args) throws IOException, SQLException, ClassNotFoundException, InstantiationException, IllegalAccessException {
Class<?> aClass = Class.forName("com.mysql.jdbc.Driver");
Driver driver =(Driver) aClass.newInstance();
DriverManager.registerDriver(driver);
FileInputStream fileInputStream = new FileInputStream("D:\\all_projects\\java_projects\\java_ij\\springMVC\\Jdbc\\src\\cn\\usts\\edu\\config\\db.properties");
Properties properties = new Properties();
properties.load(fileInputStream);
Connection connection = DriverManager.getConnection((String) properties.get("url"), (String) properties.get("user"), (String) properties.get("password"));
System.out.println("执行....");
long start = System.currentTimeMillis();
String sql = "INSERT INTO `persons`.`admin`(`amin`, `psd`) VALUES (?, ?)";
PreparedStatement preparedStatement = connection.prepareStatement(sql);
for (int i = 0; i < 5000; i++) {
preparedStatement.setString(1,"root");
preparedStatement.setString(2,"456456");
preparedStatement.executeUpdate();
}
preparedStatement.close();
connection.close();
System.out.println("执行时间"+(System.currentTimeMillis()-start));
}
批处理
public static void main(String[] args) throws IOException, SQLException, ClassNotFoundException, InstantiationException, IllegalAccessException {
Class<?> aClass = Class.forName("com.mysql.jdbc.Driver");
Driver driver =(Driver) aClass.newInstance();
DriverManager.registerDriver(driver);
FileInputStream fileInputStream = new FileInputStream("D:\\all_projects\\java_projects\\java_ij\\springMVC\\Jdbc\\src\\cn\\usts\\edu\\config\\db.properties");
Properties properties = new Properties();
properties.load(fileInputStream);
Connection connection = DriverManager.getConnection((String) properties.get("url"), (String) properties.get("user"), (String) properties.get("password"));
System.out.println("执行....");
long start = System.currentTimeMillis();
String sql = "INSERT INTO `persons`.`admin`(`amin`, `psd`) VALUES (?, ?)";
PreparedStatement preparedStatement = connection.prepareStatement(sql);
for (int i = 0; i < 5000; i++) {
preparedStatement.setString(1,"root");
preparedStatement.setString(2,"789");
preparedStatement.addBatch();
if ((i+1)%1000==0){
preparedStatement.executeBatch();
preparedStatement.clearBatch();
}
}
preparedStatement.close();
connection.close();
System.out.println("执行时间"+(System.currentTimeMillis()-start));
}