Java处理request.getParameter中的特殊字符

时间:2012-06-05 10:35:31

标签: java html jsp java-ee utf-8

我试图在我的java类中获取包含特殊字符的参数。我已将其添加如下

   <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%> 

我有这两个参数: (1)VMware班加罗尔位置的3天系统管理员(6EE SP1)培训 (2)Daiichi:eDossier - Phase1 new_6500004691

提交页面后,我得到了完美的结果,但是两个参数名称的变化如下:

(1)Daiichi:eDossier’Phase1 new_6500004691 (1)VMware班加罗尔的3天系统管理员(6EE SP1)培训

请建议

2 个答案:

答案 0 :(得分:4)

尝试在第一次调用request.setCharacterEncoding("UTF-8")之前设置getParameter()

如果这不起作用,请查看at your Tomcat config

答案 1 :(得分:2)

我知道你的问题是什么:你的应用服务器/ servlet容器没有配置为支持unicode字符。

您必须配置应用程序服务器/ servlet容器以支持UTF编码。 Tomcat示例已在此SO question中得到解答。

另一种方法是编写字符编码过滤器并在Web应用程序中对其进行配置。