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");
以此减少乱码问题。
原文地址:https://www.cnblogs.com/yvkm/p/10543338.html
时间: 2024-11-09 00:52:41