站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题为什么utf-8编码的JSP页面保存中文数据到MySQL后会变成乱码啊?

为什么utf-8编码的JSP页面保存中文数据到MySQL后会变成乱码啊?

摘要: 为什么utf-8编码的JSP页面保存中文数据到MySQL后会变成乱码啊?


我在jsp文件中设置
<%@ page contentType="text/html;charset=utf-8" language="java" %>
提交中文信息到MySQL后,再调出来就成了乱码,直接到MySQL中查看也是乱码,请问到底应该如何设置编码啊?


帮你顶一下,我也遇到了同样的问题,弄了三天了,怎么设置都不行,都是乱码


用过滤器吧 很好用的 你在csdn中可以搜速到很多的
原因是服务器默认编码或浏览器问题


谢谢啊,我就是想弄明白这些编码应该如何设置,包括页面,数据库,编辑器等等,我只是做了一个非常简单的jsp页面来测试,过滤器就不必了吧!


试着把mysql的编码改为UTF-8,默认的mysql配置好像不是utf-8


我在my.ini里面把客户端和服务端的编码都改了啊,如下:
default-character-set=utf8
以前是latin1的默认编码,是不是还要改别的地方?


楼主你是在JSP中添加到数据库中还是用通过servlet?如果是servlet的话,在读取数据前req.setCharacterEncoding("UTF-8");JSP,MYSQL编码都设置为UTF-8,IDE中Java Source File编码也要设置为UTF-8


谢谢关心,我只是做了一个简单的jsp页面来实验,现在把文本存入MySQL后,再调出来,在网页上显示已经不是乱码了,通过MySQL Query Browser来查看数据库,显示的也是中文,但是通过MySQL命令行的形式查看,就只能见到乱码了,这是怎么回事啊?


你可以到我的blog看看下面这篇文章,自己整理给自己看的JSP+MYSQL的中文问题的汇总,或许对你有所帮助。
http://blog.csdn.net/hzxdark/archive/2006/11/19/1396376.aspx



你在mysql建表时要加上DEFAULT CHARSET=utf8


我前几天也是这样的问题 同样的程序几天过后什么都没改 今天突然不是乱码了 真实郁闷死了


但是通过MySQL命令行的形式查看,就只能见到乱码了,这是怎么回事啊?
---------------------------------
可能是命令行窗口不支持UTF-8,可以查看命令行窗口的属性,"选项"页有"当前代码页",看看是不是UTF-8


改为GB2312试试看


谢谢,从命令行窗口查看utf-8的数据显示为乱码,的确是因为简体中文的windows命令行窗口不支持utf-8,选项里面没有这一字符集,只支持GBK和BIG5的中文


关注中


↑返回目录
前一篇: 上不了163的邮箱,每次登陆进去到最后一步,它的页面就一片空白
后一篇: java.lang.NullPointerException错误