<!-- 编码过滤器 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<async-supported>true</async-supported>
<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>encodingFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
其中<filter-name>随便起,<param-name>encoding</param-name>是固定的;此过滤器能过滤post请求的中文乱码。
拦截器配置在spring-mvc.xml中:
<mvc:interceptors>
<!-- 直接定义在mvc:interceptors根下面的Interceptor将拦截所有的请求 -->
<mvc:interceptor>
<!-- 定义在mvc:interceptor下面的表示是对特定的请求才进行拦截的 -->
<mvc:mapping path="/UserController/getUser.do"/>
<bean class="com.wt.controller.Test1Interceptor">
</bean>
</mvc:interceptor>
</mvc:interceptors>
其中path必须以"/"开头;若拦截所有请求,不写<mvc:interceptor>和mvc:mapping即可。
水平有限,有不对的地方请指正。