使用jsp,我们在隐藏字段中打印这个Hh’k
值,然后提交。然后在 servlet 中,我们将其作为参数获取 Hh'k
,而不是我们希望将其作为Hh’k
.
有什么建议么?
使用jsp,我们在隐藏字段中打印这个Hh’k
值,然后提交。然后在 servlet 中,我们将其作为参数获取 Hh'k
,而不是我们希望将其作为Hh’k
.
有什么建议么?
浏览器不这样做,因为没有理由。它只是对特殊字符进行 URL 编码,符合application/www-x-form-urlencoded
通过调用自动 URL 解码的合同getParameter()
。
如果您确实需要对它们进行 XML 转义,则需要在获取请求参数后自己进行。Apache Commons Lang 在这StringEscapeUtils#escapeXml()
方面很有帮助:
String foo = request.getParameter("foo");
String escapedFoo = StringEscapeUtils.escapeXml(foo);
// ...
然而,你为什么要这么做?在 HTML 中重新显示它们是否有问题?为此,有一个更简单的解决方案,只需在任何地方使用 UTF-8 即可。例如,在您的 JSP 顶部添加以下内容:
<%@page pageEncoding="UTF-8" %>
等等。