目录
1.时区问题
问题代码
<!--配置数据源,使用数据库连接池:type="POOLED"-->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/database?characterEncoding=UTF-8"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
报错 Cause: 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 if you want to utilize time zone support.
翻译:原因:java.sql.SQLException:服务器时区值 ' й ɦ ' 无法识别或表示多个时区。如果要利用时区支持,则必须配置服务器或 JDBC 驱动程序(通过"serverTimezone"配置属性)以使用更具体的时区值。
在使用MySQL8.0以上版本和MySQL驱动包8.0以上时,需要配置时区 否则会报出以上错误
【解决方法】
serverTimezone=GMT%2B8
复制以上代码加url后面
<!--配置数据源,使用数据库连接池:type="POOLED"-->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/database?serverTimezone=GMT%2B8"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
即可解决时区问题
2.驱动程序类问题
报错: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.
翻译:Loading class 'com.mysql.jdbc.Driver'.这已弃用。新的驱动程序类是"com.mysql.cj.jdbc.Driver"。驱动程序通过 SPI 自动注册,通常无需手动加载驱动程序类。
根据翻译即可看出旧的driver已经被弃用了,将旧的driver改为新的driver即可解决
<!--旧的driver-->
<property name="driver" value="com.mysql.jdbc.Driver"/>
<!--新的driver-->
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
提示:如果你的url后面加了characterEncoding=UTF-8要用&;与进行连接时区
如下图所示
<!--配置数据源,使用数据库连接池:type="POOLED"-->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/database?characterEncoding=UTF-8&serverTimezone=GMT%2B8"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
目前发现两处错误再发现其他问题再追加。