Java连接MySQL数据库以及报出ClassNotFoundException的异常处理

 1、查看我们的MySQL的版本

2、去MySQL的官网上下载我们的MySQL驱动包:官网:https://dev.mysql.com/downloads/j/

 

 3、找到Java语言对应的下载地址:

 

 4、下载压缩包:

5、解压我们的压缩包复制驱动包:

 6、找到我们lib文件夹:

 7、将我们的jar包添加到我们的库中

 add as library详解:

在IntelliJ IDEA(下文简称为IDEA)中,"Add as Library" 意味着将外部的依赖库或JAR文件添加到你的项目中作为一个库来使用。当你将某个JAR文件或依赖库添加为库之后,你可以在你的代码中引用该库,并使用其中的类、方法等功能。

将一个JAR文件或依赖库添加为库有两种主要方式:

1. 通过 Maven/Gradle 添加依赖:如果你的项目使用 Maven 或 Gradle 进行依赖管理,你可以编辑 Maven 或 Gradle 配置文件(如 pom.xml 或 build.gradle)并添加相关的依赖配置。IDEA 将会根据配置自动下载相应的 JAR 文件并将其添加为库。

2. 手动添加 JAR 文件:如果你手动拥有某个 JAR 文件或依赖库,你可以通过以下步骤将其添加为库:

   - 在 IDEA 中打开项目。
   - 在项目的工程视图中,右键点击 "libs"(或者你想要放置 JAR 文件的目录),选择 "Add as Library"(或 "New" > "Directory"),然后选择 "Library"。
   - 在弹出的对话框中,选择 "Java",然后点击 "Next"。
   - 在新的对话框中,点击 "+" 按钮选择要添加的 JAR 文件,然后点击 "OK"。
   - 确认选择并点击 "OK",JAR 文件将会被添加为库。

添加 JAR 文件为库后,你可以在项目中使用这些库中提供的类和方法。同时,IDEA 也会提供相应的代码提示、导航和调试功能来方便你开发和调试使用这些库的代码。

需要注意的是,具体的操作可能会因 IDEA 版本和项目类型而有所差异。上述内容是一般情况下的操作步骤,但具体操作可能略有差异。建议在遇到具体情况时,参考 IDEA 的官方文档或相关教程以获取更准确的指导。

8、报错详图:

理解:ClassNotFoundException,说明我们的类不能找到,这个时候我们就需要去检查我们的jar包是否被正确引入

 查看我们项目模块中是否引入

 添加到我们的库里边

 

 添加完之后点击apply

 重新尝试:

 Java连接MySQL的代码

import java.sql.*;

/*
MySQL 8.0 以上版本的数据库连接有所不同:
1、MySQL 8.0 以上版本驱动包版本 mysql-connector-java-8.0.16.jar。

2、com.mysql.jdbc.Driver 更换为 com.mysql.cj.jdbc.Driver。
MySQL 8.0 以上版本不需要建立 SSL 连接的,需要显示关闭。
allowPublicKeyRetrieval=true 允许客户端从服务器获取公钥。

连接数据库的步骤分为四步
1 注册驱动-加载Driver
2 获取连接-得到Connection
3 执行增删改查-发送Sql语句,数据库执行
4 释放资源(关闭顺序不能调换,否则会报错!)
resultSet.close();
preparedStatement.close();
connection.close();
System.out.println("6.关闭数据库资源成功!");

 */
public class MysqlConnect {

    // MySQL 8.0 以下版本 - JDBC 驱动名及数据库 URL
    // static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
    // static final String DB_URL = "jdbc:mysql://localhost:3306/class02";

    // MySQL 8.0 以上版本 - JDBC 驱动名及数据库 URL
    static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
    static final String DB_URL = "jdbc:mysql://localhost:3306/class02";


    // 数据库的用户名与密码
    static final String USER = "root";
    static final String PASS = "123456";

    public static void main(String[] args) {
        // 定义连接对象
        Connection conn = null;
        Statement stmt = null;
        try {
            // 1、注册驱动-加载Driver
            Class.forName(JDBC_DRIVER);

            // 2、获取连接-得到Connection
            System.out.println("连接数据库...");
            conn = DriverManager.getConnection(DB_URL, USER, PASS);

            // 3、执行增删改查-发送sql语句,数据库执行
            System.out.println(" 实例化Statement对象...");
            stmt = conn.createStatement();
            String sql;
            sql = "SELECT id, name, url FROM websites";
            ResultSet rs = stmt.executeQuery(sql);

            // 展开结果集数据库
            while (rs.next()) {
                // 通过字段检索
                int id = rs.getInt("id");
                String name = rs.getString("name");
                String url = rs.getString("url");

                // 输出数据
                System.out.print("ID: " + id);
                System.out.print(", 站点名称: " + name);
                System.out.print(", 站点 URL: " + url);
                System.out.print("\n");
            }
            // 4、释放资源(关闭顺序不能调换,否则会报错)
            rs.close();
            stmt.close();
            conn.close();
        } catch (SQLException se) {
            // 处理 JDBC 错误
            se.printStackTrace();
        } catch (Exception e) {
            // 处理 Class.forName 错误
            e.printStackTrace();
        }
        System.out.println("Goodbye!");
    }
}

 重新尝试:

 

 

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
以下是Java连接MySQL数据库的方法: 1. 使用JDBC连接MySQL数据库 ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class MySQLConnection { public static void main(String[] args) { // JDBC连接MySQL数据库的URL String url = "jdbc:mysql://localhost:3306/hsp_db02"; // 数据库用户名和密码 String username = "your_username"; String password = "your_password"; try { // 加载MySQLJDBC驱动程序 Class.forName("com.mysql.jdbc.Driver"); // 建立数据库连接 Connection connection = DriverManager.getConnection(url, username, password); // 连接成功后的操作 System.out.println("成功连接MySQL数据库"); // 关闭数据库连接 connection.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } } ``` 2. 使用连接连接MySQL数据库(推荐) ```java import java.sql.Connection; import java.sql.SQLException; import javax.sql.DataSource; import org.apache.commons.dbcp2.BasicDataSource; public class MySQLConnectionPool { public static void main(String[] args) { // 创建连接池对象 BasicDataSource dataSource = new BasicDataSource(); // 设置连接池属性 dataSource.setDriverClassName("com.mysql.jdbc.Driver"); dataSource.setUrl("jdbc:mysql://localhost:3306/hsp_db02"); dataSource.setUsername("your_username"); dataSource.setPassword("your_password"); try { // 从连接池获取数据库连接 Connection connection = dataSource.getConnection(); // 连接成功后的操作 System.out.println("成功连接MySQL数据库"); // 关闭数据库连接 connection.close(); } catch (SQLException e) { e.printStackTrace(); } } } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值