缓存相关问题异常解决
框架注解
MyBatis与MySQL版本
MySQL时区
框架注解
在写代码时,特别是SpringMVC框架下的代码,在dao层,service层,controller层,开始写代码时,一定要先在类上加@注解,切记不能再犯这个小错误.
MyBatis与MySQL版本
在使用MyBatis框架连接数据库时,运行程序出现如下异常:
java.sql.SQLException: Unknown system variable
原因
mysql-connecter-java的版本过低,很显然是数据库驱动程序与数数据库版本不对应.query cache在MySQL5.7.20就已经过时了,而在MySQL8.0之后就已经被移除了.
解决办法
如 mybatis使用 mysql-5.1.14的驱动程序,而mybatis配置的数据源连接的是 mysql-8.0.11,修改 pom文件中mysql-connector-java为新版本即可
MySQL时区
在配置了mysql 8的数据库时,运行项目会出现异常:
The server time zone value '?й???????' is unrecognized or represents more than one time zone.
因为新版MySQL用了统一的时区管理,时区一致便于维护 ,避免PDT时区换算出错
解决办法:在配置文件的spring.datasource.url 添加字段serverTimezone=UTC(解决时区问题)和useUnicode=true&characterEncoding=UTF-8(解决乱码问题)