过滤器解决中文乱码
过滤器(只能针对post)
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding("UTF-8");
chain.doFilter(request, response);
}
配置web.xml
<filter>
<filter-name>
CharacterEncodingFilter
</filter-name>
<filterclass>
com.bdqn.filter.CharacterEncodingFilter
</filter-class>
</filter>
<filter-mapping>
<filtername>
CharacterEncodingFilter
</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
如果要使get方法也生效,需要修改tomcat的server.xml配置文件里面关于修改端口号的标签添加URIEncodeing="UTF-8"
spring自带过滤器###**
夹在web.xml里面
<filter>
<filter-name>CharacterEncodingFilter</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>
<!-- 解决返回乱码 -->
<init-param>
<param-name>forcEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>