SpringBoot下Mysql数据库中文乱码问题【最终方案】

搭建SpringBoot+mybatis做一个业务模拟测试小系统,出现了数据持久化到MySQL中文乱码的问题。同样的代码在不同的机器上运行结果不一样(当然数据库表、字段配置相同):

	*Win7 bit64 IDEA2018.2 中文不乱码
	Mac 10.15 IDEA2019.3 乱码*

在经历了一系列思考和查询后得出结论:IDE环境不一样,导致编码不一致。于是把Mac上的FileEncoding给设置为UTF-8,然而并没有卵用。

最后在application.yml配置中找到了答案:

spring:
  datasource:
    name: test
    url: jdbc:mysql://127.0.0.1:3306/iplay?serverTimezone=UTC&&useUnicode=true&&characterEncoding=utf-8
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver

一开始也配置了时区、编码,但是就是不起作用,有时候成也细节败也细节,在url参数连接符的地方要多加【&】符号。

?serverTimezone=UTC&&useUnicode=true&&characterEncoding=utf-8

加上后再次保存中文数据就正常了。

你可能感兴趣的:(SpringBoot)