2005-11-28

JSP中文乱码解决之道

Views: 18162 | 3 Comments

对于Linux+Tomcat+JSP+Mysql,我的Mysql是character set latin1(连接值)latin1(全局值),我没改my.ini(my.cnf),这些都是默认的。Tomcat也是默认的。对于Linux来说,我用zh_CN.UTF-8的locale,不过用gb2312或者gbk都可以。

注意了,你保存的源代码建议你保存为UTF-8编码格式(在Linux下的gedit,kedit在保存时有选项)。在Windows下,你试用Editplus或者UltraEdit试一下,应该也有这个选项。

连接数据库时,jdbc:mysql://localhost:3306/admin?useUnicode=true&characterEncoding=utf8或者把utf8换为gb2312也行,不过不要再改变了!

在JSP源码中,第一行写上:

<%@ page contentType="text/html; charset=UTF-8" %>(告诉Tomcat你的源代码是UTF-8编码保存的)

注意UTF-8的大小写,不确定的话查手册。如果你保存时编辑器选用gb2312,就把UTF-8改为gb2312。然后在与 </head>之间的第一行(其他行未试)写上

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">(告诉浏览器你的代码是UTF-8格式的)UTF-8与上面的对应,若上面为gb2312,这里也为gb2312,后面假设你用UTF-8;

在读取表单之前,写上一句:

request.setCharacterEncoding("UTF-8");(告诉JVM?/Tomcat?你要读取的信息的UTF-8格式的,与你的源代码存储格式一样。)

就可以这样读取表单了:

String member_name = request.getParameter("name");

我这样做,没问题。你不妨试一试。如果有问题,请留言。

希望对你有帮助。

Related posts:

  1. PHP解析HTML和loadHTML乱码
  2. 自架设Apache服务器过程中的网页乱码问题
  3. Linux下安装和设置Tomcat,解决JSP中文乱码
  4. 强大的纯JS数据图工具-flot
  5. JavaScript+jQuery两栏选择控件
Posted by ideawu at 2005-11-28 14:13:00

3 Responses to "JSP中文乱码解决之道"

Leave a Comment