1. 导入必要的包
在 Java 中连接 MySQL 数据库,需要导入 JDBC(Java Database Connectivity)相关的包。通常使用 MySQL 官方提供的 JDBC 驱动包,例如mysql-connector-java
(需要确保已经将该驱动包添加到项目的依赖中,如果是 Maven 项目,在pom.xml
文件中添加依赖配置;如果是 Gradle 项目,在build.gradle
文件中添加相应依赖配置)。然后在代码中导入相关的类:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
2. 加载驱动
在较新版本的 JDBC 中,驱动的加载通常是自动完成的,但为了兼容性等原因,也可以显式地加载驱动类,代码如下:
try {
Class.forName("com.mysql.cj.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
3. 建立连接
使用DriverManager
类的getConnection
方法来建立与 MySQL 数据库的连接,需要传入数据库的连接 URL、用户名和密码等参数。连接 URL 的格式一般如下:
jdbc:mysql://主机地址:端口号/数据库名?参数=值&参数=值...
,例如:
String url = "jdbc:mysql://localhost:3306/mydb?useSSL=false&serverTimezone=UTC";
String username = "root";
String password = "123456";
Connection connection = null;
try {
connection = DriverManager.getConnection(url, username, password);
System.out.println("成功连接到数据库");
} catch (SQLException e) {
e.printStackTrace();
}
这里的localhost
表示本地主机,如果数据库在远程服务器上,替换为相应的服务器 IP 地址;3306
是 MySQL 默认的端口号;mydb
是要连接的数据库名称;useSSL=false
表示不使用 SSL 加密(根据实际情况设置);serverTimezone=UTC
用于设置时区(避免出现时区相关的报错)。用户名和密码根据实际在 MySQL 中设置的进行填写。
4. 关闭连接
当操作完成后,需要关闭数据库连接以释放资源,代码如下:
try {
if (connection!= null) {
connection.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
以下是一个完整的示例代码,整合了上述步骤,实现简单的连接数据库(只是建立连接,暂未执行具体的数据库操作,如查询、插入等):
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class MySQLConnectionExample {
public static void main(String[] args) {
try {
// 加载驱动(在较新环境下可能无需此行,不过写上也无妨)
Class.forName("com.mysql.cj.jdbc.Driver");
// 数据库连接URL
String url = "jdbc:mysql://localhost:3306/mydb?useSSL=false&serverTimezone=UTC";
String username = "root";
String password = "123456";
// 建立连接
Connection connection = DriverManager.getConnection(url, username, password);
System.out.println("成功连接到数据库");
// 关闭连接
connection.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
上述代码示例展示了 Java 连接 MySQL 数据库的常规流程,后续可以基于这个连接对象去执行如创建语句、执行查询等各种数据库操作。