SpringMVC的GET/POST中文参数乱码解决
POST请求参数中文乱码:
产生原因:
spring MVC中默认的编码格式为“ISO-8859-1”,因此造成乱码。
解决:
在web.xml中配置Spring字符过滤器
<!DOCTYPE web-app PUBLIC"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN""/dtd/web-app_2_3.dtd" ><web-app><display-name>Archetype Created Web Application</display-name><!-- 配置编码方式过滤器,注意一点:要配置在所有过滤器的前面 --><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></filter><filter-mapping><filter-name>CharacterEncodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping></web-app>
GET请求参数中文乱码:
String中的带参构造方法
将传入的参数重新编码
new String(name.getBytes("ISO-8859-1"), "UTF-8");
转码前后对比