mysql8的Connection抛出空指针异常

首先看驱动的方式,MySQL5的驱动方式与MySQL8的驱动方式不一样
MySQL5的驱动方式是:com.mysql.jdbc.Driver
MySQL8的驱动方式是:com.mysql.cj.jdbc.Driver
Connection.getConnection方法有三个参数,其中一个参数有错就会报空指针异常
先确定username和password有没有错,再确定URL。端口有没有错,数据库有没有错,MySQL8的URL与MySQL5的URL有区别,MySQL8的URL要加一个时区,serverTimezone=UTC

DriverManager.getConnection("jdbc:mysql://localhost:3306/chapter03?serverTimezone=UTC", "root", "密码");
  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
空指针异常(NullPointerException)在 MySQL 数据库中通常是由于未初始化或未赋值的变量或对象引起的。可能的原因包括: 1. 未正确初始化连接对象:在使用 JDBC 连接到 MySQL 数据库时,确保正确初始化连接对象,并将其分配给一个有效的变量。 例如: ```java Connection connection = null; try { // 初始化连接对象 connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_name", "username", "password"); // 其他操作... } catch (SQLException e) { e.printStackTrace(); } finally { // 关闭连接 if (connection != null) { try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } } } ``` 2. 未初始化结果集对象:在执行 SQL 查询并获取结果集时,确保正确初始化结果集对象,并将其分配给一个有效的变量。 例如: ```java ResultSet resultSet = null; try { // 执行查询并获取结果集 Statement statement = connection.createStatement(); resultSet = statement.executeQuery("SELECT * FROM table_name"); // 其他操作... } catch (SQLException e) { e.printStackTrace(); } finally { // 关闭结果集 if (resultSet != null) { try { resultSet.close(); } catch (SQLException e) { e.printStackTrace(); } } } ``` 3. 对象引用为空:在使用对象之前,确保该对象已经被正确地创建和赋值,避免对空引用进行操作。 例如: ```java String data = null; try { // 操作数据库读取数据 data = resultSet.getString("column_name"); // 其他操作... } catch (SQLException e) { e.printStackTrace(); } ``` 请检查以上可能导致空指针异常的情况,并逐一排查,确保相关对象和变量的正确初始化和赋值。如有必要,可以提供更多的代码或错误信息以帮助进一步分析问题。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值