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.

原因:

最新版数据会有此现象。

解决办法:

com.mysql.jdbc.Driver 改为 com.mysql.cj.jdbc.Driver 即可。

你可能感兴趣的:(JDBC两个小问题)