mysql 驱动包版本太低了,用高版本的mysql驱动包。
创新互联建站自2013年创立以来,是专业互联网技术服务公司,拥有项目成都网站建设、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元婺城做网站,已为上家服务,为婺城各地企业和个人服务,联系电话:18980820575
把连接代码贴出看看。
下面用的是 mysql 8.0.12 驱动包,可以参考一下:
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.SQLException;
public class App {
public static Connection getConnection() throws SQLException {
String url = "jdbc:mysql://127.0.0.1:3306/employees?serverTimezone=UTCuseSSL=false";
String username = "root";
String password = "123456";
return DriverManager.getConnection(url, username, password);
}
public static void main(String[] args) throws ClassNotFoundException, SQLException {
Class.forName("com.mysql.cj.jdbc.Driver");
Connection conn = getConnection();
System.out.println(conn.isClosed());
DatabaseMetaData metaData = conn.getMetaData();
if (metaData != null) {
System.out.println("MySQL版本:" + metaData.getDatabaseProductVersion());
}
conn.close();
}
}
驱动包不用配置环境变量啊。。。就是一个压缩包而已,然后在你的project中buildPath引入就行了
路径不同,使用命令不同。
1、5.7版本的mysql驱动路径是5.7的驱动包,8.0以上是8的驱动包。
2、8.0以上的mysql版本驱动时使用命令中的pwd需要去掉,而5.7版本的保留IDENTIFIEDBYpwd。
昨天在执行mybatis逆向工程时,在运行主函数时,出现了如下异常:
这个问题在百度,谷歌都搜不到满意的答案。而且看网上的mybatis逆向工程和我的代码一模一样,就很纳闷了。而且看视频中,老师也是直接运行无问题。
今晚下班,又仔细看了下出错信息,看到有几个是MySQL驱动包抛出的异常。就有疑问:是不是因为MySQL版本和MySQL驱动包版本不一致导致。因为当时我的MySQL版本是8.0,而驱动版本是5.1.28。于是在MySQL官网下载了高版本的驱动,然后又出现了如下问题:
后来上网查是jdk版本与MySQL版本不匹配导致的。jdk版本过低。
于是果断的把MySQL8.0下载了,换了5.6,然后一切问题解决。
通过此件事,明白了一个道理:
在开发时,统一软件版本是多么的重要。
老师在开始做这个商城项目的时候就强调,只不过我没在意,就出现了这种问题,不过还不错。估计我是第一个出这种问题的人,因为网上找不到相关的内容。