分享

mysql数据库中文乱码问题-亲自检测

 昵称3036259 2010-09-18
写了个jsp文件往mysql数据库里存数据,因为有中文数据,结果总出现乱码,程序是这样的,是在一个静态html页面里通过ajax请求服务端jsp文件,ajax将数据通过参数传递给
服务端jsp文件,jsp文件将数据存入mysql数据库,在myeclipse下,已经将所有页面文件编码设置成utf8格式,可是用mysql browser打开看,还是乱码,以前碰到过类似的问题是,是在mysql browser图形界面下,直接手工往数据库里添加数据时,如果有中文,会提示字段太长,这个通过修改数据库的编码为utf8即可,现在是数据库已经是utf8,所有的html,jsp文件也都是utf8,为什么还会出现乱码呢,查了好多资料,都不可靠,有的说要修改数据库连接参数,在jdbc:mysql://localhost:3306/mobi_user_data后面添上?characterEncoding=utf8,有的说在jsp获取参数时,添加request.setCharacterEncoding("UTF-8"),都一一试过了,还是不行,其实最重要的原因是mysql服务器的编码设置问题,修改mysql安装目录下的my.ini文件,将里面设置编码的地方设置成默认编码为utf8,重启mysql服务器,然后再重启,记得从命令行下启动,用\s命令查看,显式所有编码都设置成了utf8了就可以了,包括服务端,客户端啊什么的,这样差不多就可以一劳永逸了,还有就是html中的ajax请求jsp传递参数时的问题,如果参数含有中文,在jsp获取参数时,要用request.setCharacterEncoding("UTF-8")才行,尽管jsp已经设置成pageEncoding="UTF-8"了,这个仍然要加上,我亲自实验过了的。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多