Servlet中的乱码问题
Posted yvkm
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Servlet中的乱码问题相关的知识,希望对你有一定的参考价值。
form表单中的属性:
accept-charset 属性允许您指定一系列字符集,服务器必须支持这些字符集,从而得以正确解释表单中的数据。
form数据的编码是由如果是html文件则由<meta http-equiv="Content-Type" content="text/html;charset=utf-8">决定
如果是jsp文件则由<%@page contentType="text/html;charset=utf-8" language="java">决定的。
tomcat中是用utf-8解码的。jetty-maven-plugin也是。因此,html或jsp文件最好注明charset=utf-8。
这样的话,容器就不会解码错误。
还需注意的是,response.getWriter()返回的编码是不清楚的(本人问题),因此,在response中最好用
PrintStream out = new PrintStream(response.getOutputStream(), true, "UTF-8");
并且设置ContentType
response.setContentType("text/html;charset=utf-8");
以此减少乱码问题。
以上是关于Servlet中的乱码问题的主要内容,如果未能解决你的问题,请参考以下文章
JSP中的乱码以及Servlet中的乱码问题及解决方案(没有使用AJAX的情况)