“正在加载类 com.mysql.jdbc.Driver ... 已弃用”消息

问题描述 投票:0回答:2

我遇到错误

正在加载类com.mysql.jdbc.Driver。这已被弃用。新的 驱动程序类是 com.mysql.cj.jdbc.Driver。司机是 通过SPI自动注册并手动加载驱动程序 一般不需要上课。

有人可以解释一下为什么吗?

java mysql jdbc
2个回答
39
投票

这不是一个错误;而是一个错误。这是由以下原因产生的警告(或建议)消息:

Class.forName("com.mysql.jdbc.Driver")

打电话。尽管出现该消息,您的代码仍继续运行。

主要是告诉你驱动类的名字已经变成了

com.mysql.cj.jdbc.Driver
。所以,改用:

Class.forName("com.mysql.cj.jdbc.Driver")

它还让您知道,从 Java 6 (JDBC 4.0) 开始,通常不需要使用

Class.forName
手动加载驱动程序类,因为 JDBC 现在能够加载正确的驱动程序本身(前提是驱动程序 .jar在类路径上可用)。


7
投票

我在 Spring Boot 应用程序中遇到了同样的问题。
我在“application.properties”文件中添加了新参数:

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

这解决了我的问题。

© www.soinside.com 2019 - 2024. All rights reserved.