使用SpringMVC框架时出现乱码的解决方案----CharacterEncodingFilter过滤器
SpringMVC提供了一个 CharacterEncodingFilter 过滤器用来解决乱码问题
CharacterEncodingFilter 的使用步骤:
1. 表单数据要以POST方式提交
JSP页面中设置如下:
<form method="POST">
......
</form>
2. 在Web.xml中配置 CharacterEncodingFilter 过滤器
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
3. 页面编码方式要和过滤器中指定的编码方式保持一致
JSP页面中设置如下:
<%@ page contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
注意:过滤器是在 Servlet 端起作用的,并且是在调用 Servlet 端代码前首先调用过滤器的。