springmvc 之 中文乱码问题

中文乱码分为get的请求和post的请求

get请求方式:获取参数进行重新编码

String userName = new String(request.getParamter("userName").getBytes("ISO8859-1"),"utf-8")

post请求方式:在web.xml中添加如下配置

    <!-- 设置字符过滤器 -->
	<filter>
		<description>字符集过滤器</description>
		<filter-name>econdingFilter</filter-name>
		<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
		<init-param>
			<description>字符集编码</description>
			<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>econdingFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

 返回json格式时的乱码:在springmvc.xml中配置

<!-- 处理返回json乱码 -->
    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping" />  
	<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">  
	    <property name="messageConverters">  
	        <list>  
	            <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">  
	                <property name="supportedMediaTypes">  
	                    <list>  
	                        <value>text/html;charset=UTF-8</value>  
	                        <value>application/json;charset=UTF-8</value>  
	                    </list>  
	                </property>  
	            </bean>  
	        </list>  
	    </property>  
	</bean>  	

猜你喜欢

转载自blog.csdn.net/qq_37776015/article/details/81122268