4、配置MVC的乱码过滤:解决中文乱码
第一种:
在web.xml中配置以下内容:
<!--配置MVC的乱码过滤--> <filter> <filter-name>encoding</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>encoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
第二种:
编写一个过滤器,过滤所有请求,设置请求的编码:
package com.zhixi.filter; import javax.servlet.*; import java.io.IOException; /** * @author zhangzhixi */ public class EncodingFilter implements Filter { public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { // 设置编码方式 request.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); // 转发到下一个 chain.doFilter(request,response); } }
注册filter
<!--编写过滤器servlet--> <filter> <filter-name>encoding</filter-name> <filter-class>com.zhixi.filter.EncodingFilter</filter-class> </filter> <filter-mapping> <filter-name>encoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>