报错一
报错的问题:
java.sql.SQLException: Unknown system variable 'query_cache_size'
报错原因:
MySQL 数据库使用的版本为 8.x,但是 java 的连接驱动包还是 低版本的。
处理方式:
java 的驱动连接包下载为 8.x 的
报错二
报错问题:
nested exception is java.lang.UnsupportedClassVersionError: com/mysql/jdbc/Driver : Unsupported major.minor version 52.0
Caused by: org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are:
PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'driverClassName' threw exception;
nested exception is java.lang.UnsupportedClassVersionError: com/mysql/jdbc/Driver : Unsupported major.minor version 52.0
at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:121)
at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:75)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1519)
... 13 more
原因 java 的版本:
处理方式:
将 工程中的 jdk 设置为 对应的版本,我这里是 jdk 8
参考链接:https://stackoverflow.com/questions/22489398/unsupported-major-minor-version-52-0
报错三
报错问题:The server time zone value '???ú±ê×??±??' is unrecognized or represents more than one time zone.
原因:
出现这个的原因是因为 mysql返回的时间总是有问题,比实际时间要早8小时。
处理方式:
设置 url 添加 serverTimezone
<!-- 设置 MySQL 的相关连接操作 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/study_db?serverTimezone=GMT%2B8" />
<property name="username" value="root" />
<property name="password" value="admin" />
</bean>
关于 加载类:
加载类“com.mysql.jdbc.Driver” 。这已被弃用。新的驱动程序类是`com.mysql.cj.jdbc.Driver' 驱动程序通过SPI自动注册,通常不需要手动加载驱动程序类。
解决方法:这个问题很简单按照它的提示把代码中com.mysql.jdbc.Driver改成com.mysql.cj.jdbc.Driver就可以了
通过编译之后发现,下面的 Services 文件中对应的 已经修改了。
启动的时候也提示这个