Tomcat 发布特殊字符 [英] Tomcat post special characters
问题描述
在我的 maven 项目中,我有一个将数据发布到 HttpServlet 的 html 表单.在我以 html 形式发布特殊字符的那一刻(例如jänsen",HttpServlet 接收Jänsen".
我想我需要将设置更改为 UTF-8,但我不知道我必须在哪里这样做...
您可以尝试在您的 web.xml
中配置 org.apache.catalina.filters.SetCharacterEncodingFilter
如下:
<filter-name>设置字符编码</filter-name><filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class><init-param><param-name>编码</param-name><param-value>UTF-8</param-value></init-param><init-param><param-name>忽略</param-name><param-value>false</param-value></init-param></过滤器><过滤器映射><filter-name>设置字符编码</filter-name><url-pattern>/*</url-pattern></过滤器映射>
<块引用>
设置用于解析的字符编码的过滤器传入请求,无论是无条件的还是仅当客户端没有指定字符编码.
关于这个过滤器的更多信息这里
In my maven project I have a html form that post data to a HttpServlet. On the moment I post special characters in the html form (e.g. "jänsen", the HttpServlet receives "Jänsen".
I think I need to change settings to UTF-8 but I don't know where I have to do that...
You can try to configure org.apache.catalina.filters.SetCharacterEncodingFilter
in your web.xml
as next:
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>ignore</param-name>
<param-value>false</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
Filter that sets the character encoding to be used in parsing the incoming request, either unconditionally or only if the client did not specify a character encoding.
More info about this filter here
这篇关于Tomcat 发布特殊字符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!