问题:当使用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连接。
到此这篇关于Idea连接MySQL数据库出现中文乱码的问题的文章就介绍到这了,更多相关Idea连接MySQL数据库乱码内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!