import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class MySQL80DriverExample {
public static void main(String[] args) {
// MySQL 8.0 驱动类名
String jdbcDriver = "com.mysql.cj.jdbc.Driver";
// 数据库连接URL,注意使用了MySQL 8.0的时区参数
String dbUrl = "jdbc:mysql://localhost:3306/mydatabase?serverTimezone=UTC";
// 数据库用户名和密码
String username = "root";
String password = "password";
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
// 注册JDBC驱动
Class.forName(jdbcDriver);
// 打开与数据库的连接
conn = DriverManager.getConnection(dbUrl, username, password);
// 创建SQL语句执行对象
stmt = conn.createStatement();
// 执行查询语句
String sql = "SELECT id, name FROM users";
rs = stmt.executeQuery(sql);
// 处理结果集
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
System.out.println("ID: " + id + ", Name: " + name);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
// 关闭资源
try {
if (rs != null) rs.close();
if (stmt != null) stmt.close();
if (conn != null) conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
com.mysql.cj.jdbc.Driver。这是为了兼容性改进而更改的。serverTimezone=UTC参数,以确保时区设置正确,避免潜在的时间问题。try-catch-finally块来确保即使发生异常,数据库资源(如连接、语句和结果集)也能被正确关闭。Statement对象执行SQL查询,并通过ResultSet对象处理查询结果。希望这段代码和解释对你有帮助!
上一篇:mysql默认字符集
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站