3

情况描述

学习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:00
character-set-server=utf8

然后保存,重启MySQL服务。
项目中的MySQL url就可以简化为:

spring.datasource.url=jdbc:mysql://localhost:3306/yunzhi_spring_boot

BotBot
162 声望8 粉丝

时机未遇,耐心等待,厚积薄发。