MySQL设置时区和默认编码
情况描述
学习spring boot时要在Windows本地安装MySQL5.7,配置好之后项目,启动之后提示需要设置时区,并且在使用过程中发现出现乱码,中文无法显示,出现上述问题的主要是MySQL5.7中没有设置时区和编码。
解决方案
1、在spring boot的配置文件application.properties中设置MySQL的数据源url
spring.datasource.url=jdbc:mysql://localhost:3306/yunzhi_spring_boot?characterEncoding=utf-8&serverTimezone=GMT%2B8
解释:
characterEncoding为设置数据库编码,采用utf-8;
serverTimezone为设置时区,“GMT%2B8”即GMT+8,东八区北京时间;
有兴趣可以了解一下GMT和UTC的区别。
2、如果每次都这样设置,感觉好麻烦,直接修改MySQL的配置文件my.ini,设置两个参数:
default-time-zone=+08:00character-set-server=utf8
然后保存,重启MySQL服务。
项目中的MySQL url就可以简化为:
spring.datasource.url=jdbc:mysql://localhost:3306/yunzhi_spring_boot
链接:https://mp.weixin.qq.com/s/Fh-gflUMxEOkH1NIfuDc-Q