1、GET请求
针对GET请求,可以配置服务器Tomcat的conf\server.xml文件,在其第一个<Connector>标签中,添加URIEncoding="UTF-8"即可,如下所示:
<Connector URIEncoding="UTF-8" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
2、POST请求
但是,针对POST请求,仅配置Tomcat的server.xml文件中的<Connector标签不足以解决乱码问题,因此,需要利用Spring的字符编码过滤器:
org.springframework.web.filter.CharacterEncodingFilter
步骤:配置所开发项目的web.xml文件,添加以下内容至文件开头处即可:
<!-- ================start 配置spring的字符编码过滤器================ -->
<filter>
<!-- 解决post乱码问题需要配置spring编码过滤器 -->
<filter-name>characterEncoding</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>characterEncoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- ================end 配置spring的字符编码过滤器================ -->