首页 > 数据库    日期: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连接。

觉得上面的内容有用吗?快来点个赞吧!

点赞() 我要打赏

温馨提示 : 本站内容来自会员投稿以及互联网,所有源码及教程均为作者总结编辑,请大家在使用过程中提前做好备份,以免发生无法预知的错误,源码类教程请勿直接用于生产环境!

 可能感兴趣的文章