import java.io.IOException;
import java.io.PrintWriter;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;public class Survey extends HttpServlet { private static final long serialVersionUID = 1L; public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//response.setContentType("text/html;charset=utf-8");
this.doPost(request, response);
} public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println(" <BODY>");
request.setCharacterEncoding("utf-8");
out.println("姓名:"+request.getParameter("name"));
out.println("Email:"+request.getParameter("email"));
out.println("年龄:"+request.getParameter("age"));
/* String os[] = request.getParameterValues("os");
for(int i=0;i<os.length;i++){
out.println("操作系统:"+request.getParameter(os[i]));
}*/
out.println("编程时间:"+request.getParameter("code"));
/* String language[] = request.getParameterValues("language");
for(int i=0;i<language.length;i++){
out.println("编程语言:"+request.getParameter("language"));
}*/
out.println("建议:"+request.getParameter("comment"));
out.println(" </BODY>");
out.println("</HTML>");
out.flush();
out.close();
}}大家帮我看一下为什么会造成中文乱码,HTML页面中设置的编码方式也是UTF-8。
解决方案 »
- 关于java中AWT小程序实现
- Myeclipse7.0里如何配置FCKeditor
- select multiple选中问题
- 新手请教~有熟悉JGraph的高人么?请教将jgraph生成的图片如何不用new JFrame方式,将它转成图片在页面显示?内详~
- DTD声明问题
- 请教如何限制tomcat内存
- struts中关于action类中的一个方法问题。
- 求struts和pager标签做的分页例子(100分!在线等!!!!急!)
- 100分求助:编译EJB的时候遇到的问题.
- SSH整合连接ORACLE,老是出错,大家帮忙看看,多谢!
- 关于checkbox和JSP显示日历
- JSp页面显示当前月有几周每一周从几号到几号
<Connector port="8888" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="utf-8"/>
乱码问题会出现在:
JSP编译为SERVLET的时候
在用户请求的时候
在服务器转换中文字符为unicode编码的时候针对国内网站可以使用GBK2312。
针对合资企业可以使用UTF-8。
支持国际化可以使用UTF-8。
response.setContentType("text/html;charset=utf-8");
try {
name= new String(name.getBytes("iso-8859-1"),"GBK");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
数据交互过程中很容易出现乱码,有时候设置GBK或GB2312都不好用,在接收的地方可以用上面的代码转化一下,可以解决乱码。