java - Tomcat 后置特殊字符

标签 java tomcat servlets

<分区>

在我的 Maven 项目中,我有一个将数据发布到 HttpServlet 的 html 表单。 在我以 html 形式发布特殊字符的那一刻(例如“jänsen”,HttpServlet 收到“Jänsen”。

我想我需要将设置更改为 UTF-8,但我不知道我必须在哪里做...

最佳答案

您可以尝试在 web.xml 中配置 org.apache.catalina.filters.SetCharacterEncodingFilter,如下所示:

<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.

有关此过滤器的更多信息 here

关于java - Tomcat 后置特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38074418/

相关文章:

java - 将 Firestore 数据加载到 json 中

java - 如何在 session 关闭后使用 hibernate 访问延迟加载的字段?

Java REST-ful 服务器 + Angular 5 客户端 POST PUT 语法

java - mysql连接器字符集结果不支持utf8mb4

java - 如何将数据从 servlet 传递到 android 应用程序

java - 重构空的 if 语句

java - 在 websphere 应用程序服务器 8.5.5 上运行 liferay portlet

java - 将一台机器迁移到另一台机器时,Post 方法不起作用

java - 如何在 Java 中使用 servlet 过滤器来更改传入的 servlet 请求 url?

java - 通过jsp servlet导入csv文件到mysql