在使用mysql-8.0.13-winx64时,java代码连接数据库报错:
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.
The server time zone value ‘�й���ʱ��’ is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
上面这段报错中红色的文字很重要,这段文字告诉你mysql8.0,首先驱动换了,不是com.mysql.jdbc.Driver而是’com.mysql.cj.jdbc.Driver’,此外mysql8.0是不需要建立ssl连接的,你需要显示关闭。 最后你需要设置CST。 所以我们需要在之前我们熟悉的java连接数据库代码的基础之上改动以下两行代码:
加载驱动类
// static final String URL = "jdbc:mysql://localhost:3306/stus?useSSL=false";
//String URL = "jdbc:mysql://localhost:3306/stus?useSSL=false&serverTimezone=UTC";
String URL = "jdbc:mysql://localhost/test?serverTimezone=UTC";
建立连接
// String path = "com.mysql.jdbc.Driver";
String path = "com.mysql.cj.jdbc.Driver";