ERROR:java連線mysql資料庫8.0以上版本
阿新 • • 發佈:2018-11-01
先上解決辦法:
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