1 报错:
Loading class `com.MysqL.jdbc.Driver'. This is deprecated. The new driver class is `com.MysqL.cj.jdbc.Driver'.
原因:用了最新的 MysqL 连接驱动
解决: 将 com.MysqL.jdbc.Driver 改为 com.MysqL.cj.jdbc.Driver
Class.forName("com.MysqL.jdbc.Driver");
// 改为
Class.forName("com.MysqL.cj.jdbc.Driver");
2 报错:
The server time zone value '�й���ʱ��' is unrecognized or represents more than one time zone.
原因:数据库和系统时区差异
解决:在 JDBC 连接的 url 后面加上 serverTimezone=GMT 即可解决问题,如果需要使用 gmt+8 时区,需要写成 GMT%2B8,否则会被解析为空。
Connection connection = DriverManager.getConnection("jdbc:MysqL://127.0.0.1/test", "root", "123456");
// 改为
Connection connection = DriverManager.getConnection("jdbc:MysqL://127.0.0.1/test?serverTimezone=GMT%2B8", "root", "123456");
3 报错:
com.MysqL.jdbc.exceptions.jdbc4.MysqLNonTransientConnectionException: Could not create connection to database server
原因:maven 中 MysqL 依赖包的版本与系统实际 MysqL 版本不符
解决:版本改成 8.0.22
<dependency>
<groupId>MysqL</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.22</version>
</dependency>