web 开发乱码

以下前端都是 utf-8 字符集编码

一、后台接收
1.1、 get 请求乱码
get 请求中,请求参数在请求头中;
乱码解决方法:
a、通过在web 服务器中配置编码格式:tomcat 中,在 Connector 中添加URIEncoding="UTF-8";

1.2、post 请求乱码
post 请求中,请求参数分两部份,
1.2.1、url?参数,这部分参数在请求头中
乱码解决方法:与 get 请求中相同
1.2.2、其他请求参数在请求体中(这部分参数 web服务器不会对其编码)
乱码解决方法:
a、request.setCharacterEncoding("UTF-8"); 注:要在 request 任何操作之前设置,否则无效。
b、在 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>
    </filter>
    <filter-mapping>
      <filter-name>characterEncodingFilter</filter-name>
      <url-pattern>/*</url-pattern>
   </filter-mapping>


二、响应前端
2.1、response  println 乱码
解决方法:
response.setContentType("text/html; charset=utf-8"); 
response.setHeader("content-type","text/html;charset=UTF-8");
这两句可以解决响应前端的乱码问题;
注:要在 response 任何操作之前设置,否则无效!

2.2、spring mvc 中,注解@response 返回 乱码
在 spring 配置中扫描 注解映射到方法上 时,添加编码字符集配置:
  <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
		<property name="messageConverters">
			<list>
				<!-- 设置返回字符串编码 -->
				<bean class="org.springframework.http.converter.StringHttpMessageConverter">  
			        <property name="supportedMediaTypes">  
			           <!--  注解response 输出中文时, 这个配置可以解决 在ajax中乱码的问题,但直接返回到界面时还是乱码
			           <list> 
			                <value>text/plain;charset=UTF-8</value>  
			                <value>text/html;charset=UTF-8</value>
			            </list>  
			            -->
			            <!-- 注解response 输出中文时, 这个配置可以解决 在ajax中乱码的问题,也可以解决直接返回到界面时乱码的问题  -->
			            <list>
	                        <bean class="org.springframework.http.MediaType">
	                            <constructor-arg index="0" value="text" />
	                            <constructor-arg index="1" value="plain" />
	                            <constructor-arg index="2" value="UTF-8" />
	                        </bean>
	                    </list>
                   
			        </property>  
			    </bean> 	
			    <!-- json转换器 
				<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">

		                <list>    
		                    <value>applicaton/json;charset=UTF-8</value>    
		                    <value>text/javascript;charset=UTF-8</value>  
		                    <value>text/html;charset=UTF-8</value>  
		                </list>    
		            </property>    
				</bean>
				-->	
			</list>
		</property>
	</bean> 




--------------------------------------------------------------------
若有其他凝问或文中有错误,请及时向我指出,
我好及时改正,同时也让我们一起进步。
email : [email protected]
qq     : 1035862795
敲门砖: 代码谱写人生




猜你喜欢

转载自binary-space.iteye.com/blog/2204872