mysql8jdbc连接串_mysql8 JDBC连接注意事项

在使用MySQL 8及以上版本进行JDBC连接时,需注意以下几点:1) Maven依赖需指定8.0以上版本的mysql-connector-java;2) 驱动加载应使用`com.mysql.cj.jdbc.Driver`,避免使用已废弃的`com.mysql.jdbc.Driver`,否则会报错;3) 数据库与系统时区不同会导致异常,解决方案是在URL中添加`serverTimezone=GMT%2B8`来指定时区。
摘要由CSDN通过智能技术生成

jdbc连接mysql8以上需要注意的问题:

1、maven依赖需要指定8.0以上

mysql

mysql-connector-java

8.0.20

2、加载驱动应该使用 com.mysql.cj.jdbc.Driver,    如果依旧使用 com.mysql.jdbc.Driver 会出现如下报错:

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 classis generally unnecessary.

java.sql.SQLException: 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 property) to use a more specifc time zone value ifyou want to utilize time zone support.

at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)

at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)

at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89)

at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63)

at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:73)

at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:76)

at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836)

at com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:456)

at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)

at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:197)

at java.sql.DriverManager.getConnection(DriverManager.java:664)

at java.sql.DriverManager.getConnection(DriverManager.java:247)

at com.song.mybatis.jdbc.jdbcTest.main(jdbcTest.java:27)

在报错提示中其实已经给出提示 com.mysql.jdbc.Driver 是废弃的,不能使用, 应该使用新的驱动类 com.mysql.cj.jdbc.Driver

3、在写连接路径url时需要在末尾加上时区,mysql8以上的版本新增时区这个设置,下面错误就是由于数据库和系统时区差异所造成,在jdbc连接的url后面加上serverTimezone=GMT即可解决问题,如果需要使用GMT+8时区,需要写成GMT%2B8,否者会被解析为空。

68f724bad5a33d9a9f6bd2ca7369ecb7.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值