JDBC (Java Database Connectivity) 是 Java 操作關聯式資料庫的標準 API。本文整理從 JDK 安裝、環境變數設定、資料庫安裝(以 MySQL 為例)、JDBC 驅動部署到建立測試資料表的完整步驟。
C:\Program Files\Java\jdk-17JAVA_HOME = JDK 安裝目錄PATH 追加 %JAVA_HOME%\binCLASSPATH = .;%JAVA_HOME%\lib;%JAVA_HOME%\jre\lib(現代 JDK 通常不需手動設定)java -version、javac -versionmysql-connector-j-8.x.x.jar。-- 命令列或 Workbench 執行
CREATE DATABASE emp;
USE emp;
CREATE TABLE employees (
id INT PRIMARY KEY,
age INT NOT NULL,
first_name VARCHAR(50),
last_name VARCHAR(50)
);
INSERT INTO employees VALUES
(100, 18, 'Zara', 'Ali'),
(101, 25, 'Mahnaz', 'Fatma'),
(102, 30, 'Zaid', 'Khan'),
(103, 28, 'Sumit', 'Mittal');
import java.sql.*;
public class JdbcTest {
static final String URL = "jdbc:mysql://localhost:3306/emp?useSSL=false&serverTimezone=UTC";
static final String USER = "root";
static final String PASS = "your_password";
public static void main(String[] args) {
try (Connection conn = DriverManager.getConnection(URL, USER, PASS);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM employees")) {
while (rs.next()) {
System.out.printf("%d\t%d\t%s\t%s%n",
rs.getInt("id"), rs.getInt("age"),
rs.getString("first_name"), rs.getString("last_name"));
}
} catch (SQLException e) { e.printStackTrace(); }
}
}
ClassNotFoundException:驅動 jar 未加入 Classpath。Communications link failure:資料庫未啟動、Port 錯誤、防火牆阻擋。serverTimezone=UTC 或 Asia/Taipei。