1. 程式人生 > >ERROR:java連線mysql資料庫8.0以上版本

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