前言
俗话说的好遇到问题,解决问题。这个从项目一开始就困扰我的问题,在今天终于解决了。不是因为不重要,而是觉得代码敲完再解决也不迟嘛。无论如何。问题解决。下面小编来分享一下到底是什么原因,以及如何解决的。
内容
注册用户的时候,查看数据库中的数据,中文地址和姓名都出现了乱码的现象。如下图:
出现问题的原因:
我们存入数据库的时候再jsp页面上写的是UTF-8的格式。但是我们mysql在安装的时候默认的格式是Latin1,所以由于存入数据格式不一致,会导致中文乱码的情况出现。在解决的过程中了解到mysql会出现中文乱码的几点原因:
1、server本身设定问题,如还停留在latin1
2、table的语系设定问题(包含character与collation)
3、客户端程式的连线语系设定问题
我们把它设置成utf-8的形式,因为utf8兼容世界上所有的字符。这一点相比其他格式来说,比较方便。
解决方法
我们想要查看数据库的编码格式,就要打开mysql的命令窗口。所有程序-->搜索mysql——>双击打开输入密码-->输入命令show variables like’char%’;
那是如何改成utf8格式的呢?需要找到mysql的安装路径,在安装路径下有mysql的配置文件。mysqld的配置文件在windows下就是my.ini文件
打开my.ini文件。进行配置修改
· [mysql]
default-character-set=utf8
· [mysqld]
character-set-server=utf8
改好配置文件之后,重启一下Mysql服务。就可以了。重启mysql服务请看文章:MySQL服务的启动、停止和重启。
总结: