web 项目:解决插入 MySQL 数据库时中文乱码问题

Posted miantiao312

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web 项目:解决插入 MySQL 数据库时中文乱码问题相关的知识,希望对你有一定的参考价值。

背景:在做 javaweb 项目的时,前台传递的中文最后插入数据库的时候总是出现乱码现象。

解决方案

? A、不管是使用 Idea、eclipse,确定自己的项目所使用的字符集是 UTF-8

? B、查看 mysql的字符集是否是 UTF-8。打开 Dos 窗口,输入:mysql -u root -p, 在输入密码即可进入数据库。进入数据库输入命令 :show variables like ‘character%‘;查看数据库的字符集,如下图:

技术图片

? MySQL 的默认编码是 Latin1,不支持中文,要支持中文需要把数据库的默认编码修改为 UTF-8

? C、修改 MySQL 的字符集。

? ① 使用命令修改数据库的字符集为 UTF-8。(由于小编使用命令设置后依旧不能插入,不在此赘述)

? ② 修改 MySQL 的配置文件。(修改后,成功插入中文,在此介绍这种方法)

D、本人安装的 `MySQL`  版本是 5.7.25,安装好 `MySQL`  后就要对字符集进行修改了,网上的大部分说法是去    安装目录找一个 `my-default.ini` 文件,然后重命名为 `my.ini`,再对其进修改字符集即可,但是 在`MySQL`  的安装目录下居然没有这个文件。

? 其实 MySQL 的 5.7.25 的 my.ini文件不在安装目录下,如果是默认安装 MySQL 的,那么它的 my.ini 文 件在隐藏文件夹 C:\\ProgramData\\MySQL\\MySQL Server 5.7 下。

? 你需要做的就是显示隐藏的的项目,找到这个文件修改即可(修改前,请先做备份)。

? 对该 my.ini 文件下进行配置修改 :

? [client]

? default-character-set = utf8

? [mysql]

? default-character-set = utf8

? [mysqld]

? character-set-client-handshake = FALSE

? character-set-server = utf8

? collation-server = utf8_unicode_ci

? init_connect=’SET NAMES utf8’

? E、修改 my.ini 文件后,保存,再重启 MySQL 服务。

? ? 计算机——右键——管理——服务,找到 MySQL57,对其右键停止,再启动即可

? F、重启成功后,进入 MySQL 数据库,输入show variables like ‘character%‘; 显示数据库字符集已修改成功。

技术图片

重要提示:

对于中文乱码问题,小编只是列举了一种可能性,以及解决方案。当然最重要的是肯定还有很多原因导致中文乱码,都会有相应的解决方案。作为程序猿,应当懂得 google,正所谓自己动手,丰衣足食。

以上是关于web 项目:解决插入 MySQL 数据库时中文乱码问题的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis + Mysql 插入数据时中文乱码问题

PHP向MySQL插入记录时中文乱码

PHP向MySQL插入记录时中文乱码

Charles中文乱码处理

myeclipse连接mysql生成数据表时中文字符乱码或问号(解决方法)

mysql中文乱码