1.24.MySQL-idea中连接MySQL的基本操作

发布时间:2026/7/21 9:18:14
1.24.MySQL-idea中连接MySQL的基本操作 一.操作步骤步骤一准备一个数据库本篇以数据库student为例里面只有一个表name如下图步骤二写 JDBC 连接代码(注:需适配当前的环境)1.先确认几个关键信息数据库名student本地连接localhost用的是 MySQL 数据库Java 里连接需要用JDBC 驱动2.完整代码package Practice10; import java.sql.Connection; import java.sql.ResultSet; import java.sql.Statement; import java.sql.DriverManager; public class Test3 { public static void main(String[] args) { // 1. 定义连接信息 String url jdbc:mysql://localhost:3306/student?useSSLfalseserverTimezoneUTCcharacterEncodingutf8; String user root; // MySQL用户名 String password 123456; // MySQL密码 String drivercom.mysql.cj.jdbc.Driver; //MySQL8.0必须用com.mysql.cj.jdbc.Driver Connection conn null; Statement stmt null; ResultSet rs null; try { // 2. 加载JDBC驱动MySQL 8.0 可以省略但写上兼容老版本 Class.forName(driver); // 3. 获取数据库连接 conn DriverManager.getConnection(url, user, password); System.out.println(数据库连接成功); } catch (Exception e) { e.printStackTrace(); System.out.println(数据库连接失败); } finally { // 6. 关闭资源必须按rs - stmt - conn的顺序关 try { if (rs ! null) rs.close(); if (stmt ! null) stmt.close(); if (conn ! null) conn.close(); } catch (Exception e) { e.printStackTrace(); } } } }3.注:必须做的 3 件事添加 MySQL 驱动依赖如果你是 Maven 项目在pom.xml里加dependency groupIdmysql/groupId artifactIdmysql-connector-java/artifactId version8.0.33/version /dependency如果你是普通 Java 项目需要手动下载mysql-connector-java-8.0.xx.jar在 IDEA 里添加到项目依赖File → Project Structure → Modules → Dependencies → 导入 jar 包如上图点击JAR或目录...即可从文件中找到要加入的JAR包并加入修改代码里的关键信息password改成你自己的 MySQL 密码确认 MySQL 服务正在运行打开你的数据库连接面板确保localhost是连接成功的状态否则代码会连不上。4.常见报错排查ClassNotFoundException: com.mysql.cj.jdbc.Driver→ 说明驱动没加好Access denied for user rootlocalhost→ 用户名或密码错了Unknown database student→ 数据库名写错了或者没创建这个库Communications link failure→ MySQL 服务没启动或者端口不是 3306步骤三运行代码运行结果如下图二.注意事项1.URL书写格式如果运行后报如下异常1)异常含义解析java.lang.NumberFormatException: For input string: 3306student这个异常的意思是字符串3306student无法被解析成数字。从堆栈信息看问题出在com.mysql.cj.conf.ConnectionUrlParser.parseHostPortPair说明 MySQL JDBC 驱动在解析你的连接 URL 时把端口号部分当成了3306student去解析成整数结果失败了。2)根本原因你的连接 URL 写错了String url jdbc:mysql://localhost:3306student?useSSLfalseserverTimezoneUTCcharacterEncodingutf8;这里localhost:3306student是错误的格式MySQL 的 URL 格式是jdbc:mysql://主机:端口/数据库名你把端口3306和数据库名student连在一起写成了3306student少了一个/正确的格式应该是String url jdbc:mysql://localhost:3306/student?useSSLfalseserverTimezoneUTCcharacterEncodingutf8;2.断开数据库方式3.DriverManager类DriverManager 就是 Java 里专门帮你 “获取数据库连接” 的工具类-它的作用只有一个根据你给的地址、账号、密码帮你拿到和数据库的连接Connection1)用生活例子类比你要去MySQL 数据库这个 “房子” 里拿数据DriverManager门卫 / 登记处url、user、password 你要去的房子地址、门牌号、钥匙getConnection() 门卫检查你的钥匙没问题就开门给你一把进门权限ConnectionConnection 你拿到的进门权限有了它才能查数据、改数据2)在代码里它到底做了什么conn DriverManager.getConnection(url, user, password);DriverManager 悄悄帮你干了 3 件事找到 MySQL 的驱动你导入的 jar 包用url找到数据库位置验证账号密码成功就返回一个连接对象 Connection3)它在代码里的位置// 1. 地址、账号、密码 String url ...; String user root; String password 123456; // 2. 用 DriverManager 获取连接 Connection conn DriverManager.getConnection(url, user, password);它是连接数据库的 “入口工具类”。4)必须记住的 3 个关键点DriverManager 是 Java 自带的类不需要自己写核心方法只有一个getConnection(地址,账号,密码)返回值最重要返回Connection真正的数据库连接5)最简单的记忆口诀想连数据库 → 找 DriverManagerDriverManager 给你 Connection有了 Connection 才能操作数据6)总结DriverManager获取数据库连接的工具类作用通过地址、账号、密码拿到Connection核心方法DriverManager.getConnection(url, user, password)4.驱动类若Class.forName(driver);报错99% 是因为驱动类写错了比如用了 MySQL 8.x 的驱动但写的是 5.x 的旧类名。1)错误原因例如String drivercom.mysql.jdbc.Driver; // 旧版MySQL 5.xMySQL 5.x老驱动类是com.mysql.jdbc.DriverMySQL 8.x你现在装的必须用com.mysql.cj.jdbc.Driver多了.cj.如果电脑里装的 / IDEA 里用的是MySQL 8.x但用了MySQL 5.X所以旧类名找不到直接报ClassNotFoundException: com.mysql.jdbc.Driver2)把代码改成正确的package Practice10; import java.sql.Connection; import java.sql.ResultSet; import java.sql.Statement; import java.sql.DriverManager; public class Test3 { public static void main(String[] args) { // 1. 连接信息8.x 要加时区参数 String url jdbc:mysql://localhost:3306/student?useSSLfalseserverTimezoneUTCcharacterEncodingutf8; String user root; String password 123456; String driver com.mysql.cj.jdbc.Driver; // ✅ 改成新类名 Connection conn null; Statement stmt null; ResultSet rs null; try { Class.forName(driver); // 现在能找到了 conn DriverManager.getConnection(url, user, password); System.out.println(数据库连接成功); } catch (Exception e) { e.printStackTrace(); System.out.println(数据库连接失败); } finally { try { if (rs ! null) rs.close(); if (stmt ! null) stmt.close(); if (conn ! null) conn.close(); } catch (Exception e) { e.printStackTrace(); } } } }3.)额外两件事不然还可能连不上确认驱动包已导入普通项目mysql-connector-java-8.0.xx.jar加到项目依赖Mavendependency groupIdmysql/groupId artifactIdmysql-connector-java/artifactId version8.0.33/version /dependencyURL后必须加参数这个针对MySQL 8.x强制要时区否则连不上因为8.x服务器在国外?useSSLfalseserverTimezoneUTCcharacterEncodingutf8MySQL 5.X用这个URL即可jdbc:mysql://localhost:3306/student4)一句话总结com.mysql.jdbc.Driver→ 5.x 旧版8.x 已删除com.mysql.cj.jdbc.Driver→ 8.x 新版必须写这个