Eclipse 整合 MySQL 完整實戰流程:環境準備、建立測試資料、專案配置 JDBC、連線查詢驗證、PreparedStatement 批次插入 100 筆資料、資料庫端驗證結果。
mysql-essential-5.1.51-win32mysql-connector-java-5.1.xx-bin.jarCREATE DATABASE test;
USE test;
CREATE TABLE user (name VARCHAR(20), password VARCHAR(20));
INSERT INTO user VALUES ('huzhiheng', '123456');
mysql-connector-java-5.1.xx-bin.jar → 確定import java.sql.*;
public class MysqlJdbc {
public static void main(String[] args) {
// 1. 載入驅動
try {
Class.forName("com.mysql.jdbc.Driver");
System.out.println("Success loading Mysql Driver!");
} catch (Exception e) {
System.out.print("Error loading Mysql Driver!");
e.printStackTrace();
}
// 2. 連線與查詢
try (Connection conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test", "root", "198876");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM user")) {
System.out.println("Success connect Mysql server!");
while (rs.next()) {
System.out.println(rs.getString("name"));
}
} catch (Exception e) {
System.out.print("get data error!");
e.printStackTrace();
}
}
}
輸出預期:
Success loading Mysql Driver! Success connect Mysql server! huzhiheng
public class Myjproject {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
System.out.println("Success loading Mysql Driver!");
} catch (Exception e) {
e.printStackTrace();
}
try (Connection conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test", "root", "198876");
PreparedStatement pstmt = conn.prepareStatement(
"INSERT INTO user VALUES (?, ?)")) {
int num = 100;
for (int i = 0; i < num; i++) {
pstmt.setString(1, "chongshi" + i);
pstmt.setString(2, "bo" + i);
pstmt.executeUpdate();
}
System.out.println("Inserted " + num + " rows.");
} catch (SQLException e) {
e.printStackTrace();
}
}
}
SHOW DATABASES; USE test; SHOW TABLES; SELECT * FROM user; -- 應看到 101 筆資料 (含初始 1 筆)
jdbc:mysql://host:port/db?useSSL=false&serverTimezone=UTCnet start mysql / systemctl status mysqldbind-address=0.0.0.0 允許遠程 (本地測試可忽略)