今天整理一下Mysql版本驱动问题,因为在实际工作中,有些项目版本比较低,所以可能是5或以下,但是新项目可能比较高,用的驱动是6或以上,那么区别就会来了,mysql不想Oracle和Mssqlserver的写法是部分版本的,Mysql是不一样的,这么我们就需要注意了,如果我们在Maven中看到的驱动是这样的。
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.11</version>
</dependency>
我们的版本是比较高的。接下来我们说下有什么区别。
com.mysql.jdbc.Driver
是 mysql-connector-java 5中的。com.mysql.cj.jdbc.Driver
是 mysql-connector-java 6中的。
1、JDBC连接Mysql5 com.mysql.jdbc.Driver
:
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/flowable?useUnicode=true&characterEncoding=utf8&useSSL=false
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.username=demo
spring.datasource.password=mysql
2、JDBC连接Mysql6 com.mysql.cj.jdbc.Driver
, 需要指定时区serverTimezone:
database.mysql.url=jdbc:mysql://127.0.0.1/flowable?serverTimezone=GMT%2b8&useUnicode=true&characterEncoding=utf8&useSSL=false
database.mysql.driver=com.mysql.cj.jdbc.Driver
database.mysql.user=demo
database.mysql.password=mysql
在设定时区的时候,如果设定serverTimezone=UTC,会比中国时间早8个小时,如果在中国,可以选择Asia/Shanghai或GMT