packagecn.enjoy;importorg.junit.Test;importjava.io.BufferedReader;importjava.io.FileReader;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.SQLException;importjava.text.SimpleDateFormat;importjava.time.LocalDateTime;importjava.util.Date;public classInsertDemo {private static String user = "root";private static String pass = "123456";private static String URL = "jdbc:mysql://127.0.0.1:3306/test";
@Testpublic void test1() throwsException{
BufferedReader br= new BufferedReader(new FileReader("D:\\product_info.sql"));
Connection conn=DriverManager.getConnection(URL , user, pass);
LocalDateTime now=LocalDateTime.now();
System.out.println(now);
br.lines().forEach(sql->{try{
PreparedStatement ps=conn.prepareStatement(sql);
ps.executeUpdate();
ps.close();
}catch(Exception e) {
e.printStackTrace();
}
});
br.close();
conn.close();
LocalDateTime now2=LocalDateTime.now();
System.out.println(now2);
}int i=0;
@Testpublic void test2() throwsException{
BufferedReader br= new BufferedReader(new FileReader("D:\\product_info.sql"));
Connection conn=DriverManager.getConnection(URL , user, pass);
LocalDateTime now=LocalDateTime.now();
System.out.println(now);
conn.setAutoCommit(false);
br.lines().forEach(sql->{try{
PreparedStatement ps=conn.prepareStatement(sql);
ps.addBatch();if((i%2000)!=0 && i<=2097152) {
i++;
}else{
ps.executeBatch();
conn.commit();
i=0;
}
}catch(Exception e) {
e.printStackTrace();
}
});
br.close();
conn.close();
LocalDateTime now2=LocalDateTime.now();
System.out.println(now2);
}
String str= "INSERT INTO `product_info` VALUES ";
@Testpublic void test3() throwsException{
BufferedReader br= new BufferedReader(new FileReader("D:\\product_info.sql"));
Connection conn=DriverManager.getConnection(URL , user, pass);
LocalDateTime now=LocalDateTime.now();
System.out.println(now);
conn.setAutoCommit(false);
br.lines().forEach(sql->{try{
str=str + sql.split("VALUES")[1].replace(";",",");if((i%2000)!=0 && i<=2097152) {
i++;
}else{
i++;
str= str.substring(0,str.length()-1);//System.out.println(str);
PreparedStatement ps =conn.prepareStatement(str);
ps.executeUpdate();
str= "INSERT INTO `product_info` VALUES ";
conn.commit();
}
}catch(Exception e) {
e.printStackTrace();
}
});
br.close();
conn.close();
LocalDateTime now2=LocalDateTime.now();
System.out.println(now2);
}
}