更多>>Java程序设计 Blog

Java连接MySQL数据库报出java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/demo错误

Java利用JDBC技术连接MySQL数据库报java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/demo异常的解决方法。

     

一、连接数据库


1、Java利用JDBC技术连接MySQL数据库代码如下:

import java.sql.*; // 导入 java.sql 包

public class Demo {
	
	Connection con; // 声明 Connection 对象
	public Connection getConnection() {
		// 建立返回值为 Connection 的方法
		//加载数据库驱动类
		try {
			Class.forName("com.mysql.jdbc.Driver");
			System.out.println("数据库驱动加载成功");
		} catch(ClassNotFoundException e) {
			e.printStackTrace();
		}
		
		// 通过访问数据库的 URL,获取数据库连接对象
		try {
			con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/demo","root","root");
			System.out.println("数据库连接成功");
		} catch(SQLException e) {
			e.printStackTrace();
		}
		return con;
	}

	
	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		Demo c = new Demo();
		c.getConnection();

	}

}


2、执行完毕后,报出如下错误:

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
	at java.base/java.lang.Class.forName0(Native Method)
	at java.base/java.lang.Class.forName(Class.java:332)
	at Demo.getConnection(Demo.java:10)
	at Demo.main(Demo.java:30)
java.sql.SQLException: No suitable driver found for jdbc:mysql://127.0.0.1:3306/demo
	at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:702)
	at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228)
	at Demo.getConnection(Demo.java:18)
	at Demo.main(Demo.java:30)


因为 Java 连接数据库时首先需要加载驱动程序,MySQL Java 驱动程序可以从官网上进行下载。


二、下载 MySQL Java 驱动程序 jar 包


1、MySQL官网下载地址如下:https://www.mysql.com/

2、点击 DOWNLOADS 进入 https://www.mysql.com/downloads/ 页面

3、点击 MySQL Community (GPL) Downloads » 进入 https://dev.mysql.com/downloads/ 页面

4、点击 Connector/J 进入 https://dev.mysql.com/downloads/connector/j/ 页面

5、在当前页面,Select Operating System: 项中,选择 Platform Independent 即独立于平台

6、可以看到当前最新版本为 Connector/J 8.0.25

有2个下载包,一个是 .tar.gz 包,一个是 .zip 包,后面均有一个 Download 按钮,任选一个下载包下载即可。

7、点击 Download 按钮后进入的页面,点击 No thanks, just start my download. 即可进入下载界面。


三、在 Eclipse 中加载 MySQL Java 驱动程序 jar 包


1、右键 你的项目名称(如 MyProject) - 构建路径 Build Path - 配置构建路径 Configure Build Path - 库


2、在弹出的窗口中,如图所示:

2021-07-04_232912.png

左侧:Java 构建路径 Java Build Path

右侧:库 Libraries

点击类路径 - 添加外部JAR 找到下载的 jar 包 应用并关闭

即可把 jar 加载进来


四、运行连接数据库的代码


再次运行连接数据库的代码,所报错误如下:

Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.数据库驱动加载成功

数据库连接成功


这是因为 com.mysql.jdbc.Driver 已经在最新版 MySQL 驱动程序中被废弃了。

需要使用 com.mysql.cj.jdbc.Driver 来驱动数据库。


解决方法:

将数据库连接驱动代码 Class.forName("com.mysql.jdbc.Driver");

改为  Class.forName("com.mysql.cj.jdbc.Driver");


再次运行,结果如下:

数据库驱动加载成功

数据库连接成功


评论列表

暂时没有相关记录

发表评论

用来接收审核回复提醒,请认真填写

captcha
看不清?点击图片换一张