JDBC两个小问题

  1. The Server time zone value 'XXXXX' 乱码 -- MySQL数据库连接报错
错误信息:
mysql java.sql.SQLException: The server time zone value‘XXXXXX' is unrecognized or represents...

原因:
这是由于数据库和系统时区差异所造成的

解决方案: 1.在 jdbc 连接的 url 后面加上 serverTimezone=GMT 即可解决问题,若需使用gmt+8时区,需要写成GMT%2B8,否则会被解析为空。
2.使用低版本的MySQL jdbc驱动,5.1.28不会存在时区的问题。
例如: url=jdbc:mysql://localhost:3306/test?useUnicode=true$characterEncoding=utf8
改为
url=jdbc:mysql://localhost:3306/test?serverTimezone=UTC
  1. 使用JDBC连接数据库时出现报错
错误信息: 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.
原因:
最新版数据会有此现象。

解决办法: 【JDBC两个小问题】将 com.mysql.jdbc.Driver 改为 com.mysql.cj.jdbc.Driver 即可。

    推荐阅读