Java的强大优势就是平台的可移植性。然而各个平台的字符集不相同就导致出现中文乱码。这是中国java开发人员中的一个头疼的问题。
一般来说,对于中文的简体字符为 gb2312.而港台地区的繁体字符是 big5.俗称大五码、而UTF-8字符是包括 gb2312 和big5和日文韩文等的。另外utf-8对于大多数的数据库都能很好的支持。 所以一般我们设置字符为UTF-8。
对于servlet来说,一般我们可以从以下4个方面着手解决这个头疼的乱码问题。
1. 首先就是开发工具的设置。例如MyEclipse,JB,Eclipse等都能够设置其编辑的字符集。一下是myeclips 和Eclipse的设置方式。
打开myeclips或者Eclipse 选择---项目----属性---文本文件编码----其他,选择utf-8。
2.html页面的字符集设置。
在html 代码中,声明UTF-8;
在<head>和</head>中间加入<META http-equiv="Content-Type" CONTENT="text/html;charset=utf-8">。
在jsp头部声明:<%@ page contentType="text/html;charset=utf-8"%>。
3.从请求取得参数之前,必须先设置编码的方式。
request.SetCharacterEncoding("UTF-8");
4.容器的设置。一般我们都用tomcat 所以这里介绍tomcat的设置方式。
修改config/server.xml文件中的<Connector port="8080".../>增加对GET方法获取数据时的编码设置的属性 URIEncoding="UTF-8"。
好了,相信这些都做到了 我们开发servlet的时候就不会出现中文乱码了。希望这点总结对大家有帮助。