首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java JDBC 連接 MySQL 數據庫完整步驟與代碼實戰

     編輯:Java 相關知識

環境準備

  1. 安裝 JDK(建議 1.8+)。
  2. 安裝 MySQL 數據庫。
  3. 下載 JDBC 驅動 mysql-connector-java-5.1.x-bin.jar(或更新版)。
  4. 將 jar 包加入 classpath:
    我的電腦 → 屬性 → 高級 → 環境變量 → 系統變量 → Classpath,在末尾添加 ;D:\mysql-connector-java-5.1.x\mysql-connector-java-5.1.x-bin.jar。

數據庫與表創建

CREATE DATABASE SCUTCS;
USE SCUTCS;
CREATE TABLE STUDENT (
    SNO CHAR(7) NOT NULL,
    SNAME VARCHAR(8) NOT NULL,
    SEX CHAR(2) NOT NULL,
    BDATE DATE NOT NULL,
    HEIGHT DEC(5,2) DEFAULT 0.00,
    PRIMARY KEY(SNO)
);
INSERT INTO STUDENT VALUES ('0104421', '周遠行', '男', '1990-01-01', 175.5);
-- 更多測試數據...

Java 連接查詢代碼

import java.sql.*;

public class JDBCTest {
    public static void main(String[] args) {
        String driver = "com.mysql.jdbc.Driver";
        String url = "jdbc:mysql://127.0.0.1:3306/scutcs";
        String user = "root";
        String password = "root";

        try {
            Class.forName(driver);
            Connection conn = DriverManager.getConnection(url, user, password);
            if (!conn.isClosed()) {
                System.out.println("Succeeded connecting to the Database!");
            }

            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT * FROM student");

            System.out.println("-----------------");
            System.out.println("學號\t姓名");
            System.out.println("-----------------");
            while (rs.next()) {
                String sno = rs.getString("sno");
                String name = rs.getString("sname");
                // 處理中文編碼問題(舊版驅動需手動轉碼)
                name = new String(name.getBytes("ISO-8859-1"), "GB2312");
                System.out.println(sno + "\t" + name);
            }
            rs.close();
            conn.close();
        } catch (ClassNotFoundException e) {
            System.out.println("Sorry, can't find the Driver!");
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

運行結果

Succeeded connecting to the Database!
-----------------
學號	姓名
-----------------
0104421	周遠行
0208123	王義平
0209120	王大力
0309119	李 維
0309203	歐陽美林

注意事項

  • MySQL 5.0+ 驅動類名為 com.mysql.jdbc.Driver,8.0+ 為 com.mysql.cj.jdbc.Driver。
  • URL 參數建議加上 ?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai 避免編碼與時區問題。
  • 生產環境請使用連接池(HikariCP、Druid)管理連接。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved