在Spring MVC中使用CharacterEncodingFilter来设置字符编码过滤器可以确保请求和响应中的参数都被正确编码。
首先,在web.xml文件中配置CharacterEncodingFilter:
<filter>
<filter-name>encodingFilter</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>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
在上面的配置中,设置了字符编码为UTF-8,并且强制编码。
然后,在Spring配置文件中注册CharacterEncodingFilter:
<bean id="characterEncodingFilter" class="org.springframework.web.filter.CharacterEncodingFilter">
<property name="encoding" value="UTF-8"/>
<property name="forceEncoding" value="true"/>
</bean>
这样就配置好了CharacterEncodingFilter,它会对所有请求和响应进行字符编码处理。