首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Java 連接 MySQL 完整教程:從導入驅動到打包部署

     編輯:程式設計疑難解答

準備工作

  1. 下載 MySQL Connector/J(mysql-connector-java-x.x.x.jar)。
  2. 將 jar 放入項目 lib 目錄,並在 IDE 中添加到 Classpath(Maven/Gradle 直接添加依賴)。

核心代碼

import java.sql.*;

public class JdbcDemo {
    private static final String URL = "jdbc:mysql://localhost:3306/your_db?useSSL=false&serverTimezone=UTC";
    private static final String USER = "root";
    private static final String PASS = "password";

    public static void main(String[] args) {
        try (Connection conn = DriverManager.getConnection(URL, USER, PASS)) {
            System.out.println("連接成功:" + conn);
            // 增刪改查示例
            try (PreparedStatement ps = conn.prepareStatement("INSERT INTO users(name) VALUES(?)")) {
                ps.setString(1, "Alice");
                ps.executeUpdate();
            }
            try (Statement st = conn.createStatement();
                 ResultSet rs = st.executeQuery("SELECT * FROM users")) {
                while (rs.next()) {
                    System.out.println(rs.getInt("id") + " " + rs.getString("name"));
                }
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

打包為可執行 JAR

Maven (推薦)

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-shade-plugin</artifactId>
      <version>3.4.1</version>
      <configuration>
        <transformers>
          <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
            <mainClass>com.example.JdbcDemo</mainClass>
          </transformer>
        </transformers>
      </configuration>
      <executions>
        <execution>
          <phase>package</phase>
          <goals><goal>shade</goal></goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

執行 mvn package 生成 target/demo-1.0-SNAPSHOT.jar,直接 java -jar demo.jar 運行。

無構建工具(手動)

javac -cp ".;mysql-connector-java.jar" JdbcDemo.java
jar cfe JdbcDemo.jar JdbcDemo *.class
# 運行時需將依賴 jar 放同級目錄並用 -cp 指定
java -cp ".;mysql-connector-java.jar;JdbcDemo.jar" JdbcDemo

常見坑

  • JDBC URL 時區參數 serverTimezone=UTC 避免時間偏移。
  • MySQL 8.0+ 驅動類名為 com.mysql.cj.jdbc.Driver,舊版為 com.mysql.jdbc.Driver(自動加載無需 Class.forName)。
  • 生產環境務必使用連接池**(HikariCP、Druid)管理連接。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved