出现乱码原因
浏览器请求编码和服务器端解析的编码方式不一致导致。
解决思路
设过滤器,过滤所有请求,在所有请求前加上编码字符集的操作。
SpringMVC中CharacterEncodingFilter类负责设置字符编码。
具体解决
在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>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>