ERROR:java连接mysql数据库8.0以上版本

先上解决办法:

1、修改jdbc.properties   

原来是:

jdbc.url=jdbc:mysql://localhost:3306/language_protection?useUnicode=true&characterEncoding=UTF-8

改为:

jdbc:mysql://127.0.0.1:3306/language_protection?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC

2、添加mysql驱动,可以直接下载后倒入mysql-connector-java-8.0.11.jar 点击下载,也可以使用maven:

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.11</version>
</dependency>

3、修改mysql驱动包路径:com.mysql.cj.jdbc.Driver //之前为com.mysql.jdbc.Driver

使用JDBC连接MySql时出现: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

在连接字符串后面加上?serverTimezone=UTC

其中UTC是统一标准世界时间。

完整的连接字符串示例:jdbc:mysql://localhost:3306/test?serverTimezone=UTC

或者还有另一种选择:jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8,这个是解决中文乱码输入问题,当然也可以和上面的一起结合:jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC

猜你喜欢

转载自blog.csdn.net/qq_36396104/article/details/83549321