package org.hxl.rds;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Date;
import java.text.SimpleDateFormat;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class InsertDataMysql {
static String url = "jdbc:mysql://192.168.1.14:3306/db_admin?useSSL=false";
static String username = "root";
static String password = "yeemiao1117";
public static void InsertData(){
Connection conn = null;
PreparedStatement pstmt = null;
try {
// 加载和注册JDBC驱动
//Class.forName("com.mysql.cj.jdbc.Driver");
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(url, username, password);
// 建立连接
//Connection conn = DriverManager.getConnection(url, username, password);
conn.setAutoCommit(false);
// 如果连接成功,则输出信息
if (conn != null) {
System.out.println("Connected to the database successfully!");
} else {
System.out.println("Failed to make connection!");
}
String sql = "insert into user (name, email) VALUES (?, ?)";
int count = 0;
pstmt = conn.prepareStatement(sql);
for (int i = 0; i < 1000; i++) {
String name = "hxltest"+ i;
String email = name + "qq.com";
pstmt.setString(1, name);
pstmt.setString(2, email);
int affectedRows = pstmt.executeUpdate();
count++;
if (count % 100 == 0){
conn.commit();
}
}
conn.commit();
// 关闭连接(可选)
conn.close();
} catch (ClassNotFoundException e) {
System.out.println("MySQL JDBC Driver not found.");
e.printStackTrace();
} catch (SQLException e) {
System.out.println("Connection Failed! Check output console");
e.printStackTrace();
}
}
public static void main(String[] args) {
Date startDate = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String startTime = sdf.format(startDate);
System.out.println("开始时间:" + startTime);
ExecutorService executorService = Executors.newFixedThreadPool(5);
for (int i = 0; i < 5; i++) {
final int threadNum = i;
executorService.execute(() -> {
InsertData();
});
}
executorService.shutdown();
Date endDate = new Date();
String endTime = sdf.format(endDate);
System.out.println("结束时间:" + endTime);
}
}