Idea连接MySQL数据库出现中文乱码的问题

来自:网络
时间:2021-04-13
阅读:

问题:当使用JDBC连接MySQL数据库时,插入中文显示乱码
解决方法:在连接代码中插入以下代码

String url = "jdbc:mysql://localhost:3306/你的数据库名?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false";

代码解读

useUnicode=true&characterEncoding=utf8

以上代码有两个作用:
1.存数据时:
数据库在存放项目数据的时候会先用UTF-8格式将数据解码成字节码,然后再将解码后的字节码重新使用GBK编码存放到数据库中。

2.取数据时:
在从数据库中取数据的时候,数据库会先将数据库中的数据按GBK格式解码成字节码,然后再将解码后的字节码重新按UTF-8格式编码数据,最后再将数据返回给客户端。

serverTimezone=UTC

以上代码是为了指定时区,加上这段代码后就不会报时区错误了。

useSSL=false

高版本的MySQL需指明是否进行SSL连接。

返回顶部
顶部