提交表单时,特殊字符将变为符号

时间:2016-05-27 12:32:42

标签: java jsp special-characters

我有一个页面,其中包含用户必须填写输入的表单,他们的登录名会自动填入隐藏的输入中,并且我的用户具有特殊字符的登录名(在我的情况下,该字符为é )。提交表单时,特殊字符将变为符号é。这就是我所拥有的:

FORM

<input type="hidden" name="Employe" value="<%= employe %>">

当我检查元素时,我可以看到值为rémax

当我这样做时

String employe = request.getParameter("Employe");
System.out.println(employe);

输出为rémax

这似乎不是charset的问题,因为我可以在两个视图中显示特殊字符。为什么特殊字符没有按预期显示?

1 个答案:

答案 0 :(得分:0)

尝试将start添加到页面的开头。

如果不起作用,您可以尝试以下方法:

  1. 这是<?xml version="1.0" encoding="UTF-8"?>请求,服务器未配置为使用UTF-8来解析请求URI。如果您使用的是Tomcat,请将GET中的HTTP连接器的URIEncoding属性设置为/conf/server.xml
  2. 如果是UTF-8请求,则需要确保servletcontainer使用POST对请求正文进行编码。您可以事先通过UTF-8执行此操作。