再谈mysql中文乱码

 一直使用mysql保存数据都没有什么问题,但最近做了个新的博客项目后,保存的中文总是乱码,但在后台用中文保存没有问题,只要用jsp页面输入servlet接收处理后,存入mysql数据库后就会出现中文乱码。郁闷不得其解就上网去搜,网上各种答案总总,看得人眼花缭乱,急病乱投医。刚入门的编程爱好者就在那瞎折腾了。我经过测试认为做好以下几个方面就可以避免中文乱码的问题。

1、把所有的开发工具、数据库等的编码格式能改成utf-8的就改成utf-8;

2、把mysql安装目录下的my.ini文件中的default-character-set=的值改为UTF8,不是UTF-8。在此文件中一共有两处,都改为UTF8,很关键。

3、修改完mysql安装目录下的my.ini文件后,一定要重启mysql,否则不生效。呵呵,这是好多人,特别是新手不注意的地方。

4、在web服务器(我使用的是tomcat6.0)中,把 <Connector port="80" protocol="HTTP/1.1"  connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />加入URIEncoding="UTF-8"。这一步不是必须的,但最好这样设一下,它能保证你从url中获取的信息的中文不乱码。特别是通过doGet()方法传过来的参数。

5、在jsp页面中的信息传入servlet处理页面中一定要加入request.setCharacterEncoding("UTF-8");这句编码。它可以保证存入mysql中的中文信息不乱码。

通过以上的几步就可以保证你的mysql不会出现乱码。其实网上解决mysql中文乱码的文章很多,其实万变不离其宗,只要胆大心细的多动气去做都一定能做好。以上只是本人在开发中的一点心得,也许能帮上你的忙,(很高兴)也许不能(呵呵,不好意思)。仅此文章与大家共勉,写得不对的请大家多指正。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值