今天在做项目的时候,遇见了中文乱码的问题。之前也遇见过,一直没解决,干脆就不用中文了,但这次因为一些原因不得不用中文。所以找了一晚上,csdn的各个博客都被我翻遍了,还是没解决,不仅java里显示不了数据库输入的中文,连mysql也没办法显示中文了……emmm……
我一开始先是将mysql数据库的里编码模式全改为utf-8了,web页面也都是utf-8,开发平台里的各种文件啊啥的也都是utf-8,但还是不行啊……一筹莫展……
如下:修改my.ini里的配置
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
其实这时候,mysql已经默认是utf-8了,输入的中文也是utf-8的编码模式,但奈何win7的dos窗口默认gbk,即使我改了cmd的编码模式, 在mysql的文件下打开mysql,仍然是gbk。想着还是先把mysql改回gbk吧,至少在数据库内能看见中文。就把my.ini的配置又改了一下,顺便在java web里调试了一下。
改动如下:
[mysql]
default-character-set=gbk
成功了!能显示中文了!不乱码了!前台输入的中文和数据库的中文能匹配了!真的开心!特此记录一下!以免下次忘记!