当前位置:首页 > 开发 > 互联网 > 正文

web 开发乱码

发表于: 2015-04-22   作者:征客丶   来源:转载   浏览:
摘要: 以下前端都是 utf-8 字符集编码 一、后台接收 1.1、 get 请求乱码 get 请求中,请求参数在请求头中; 乱码解决方法: a、通过在web 服务器中配置编码格式:tomcat 中,在 Connector 中添加URIEncoding="UTF-8"; 1.2、post 请求乱码 post 请求中,请求参数分两部份, 1.2.1、url?参数,
以下前端都是 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 : binary_space@126.com
qq     : 1035862795
敲门砖: 代码谱写人生




web 开发乱码

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
原文地址:http://www.iteye.com/topic/1116006 今天对前端开发常见的乱码情况进行了汇总测试和分析
今天对前端开发常见的乱码情况进行了汇总测试和分析,并做了下面这个总结表格。希望对遇到乱码问题
作为工作多年的老鸟,遇到了很多中文乱码问题,但是总是通过google和try again and again的方式解决
这几天简单的学习了一下SSH,今天尝试用SSH做一个简单的用户管理Demo,在测试添加用户,也就是往数
---恢复内容开始--- 在eclpse中设置:1.Windows->Preferences->General->Content Types-&g
java的编码原理: java内部使用的是USC2编码(两个字节的Unicode编码),这种编码不属于某个语系的语
1.数据库编码不一致导致乱码 解决方法: 首先查看数据库编码,输入: show variables like "%char%"
String data = "不见青山"; ServletOutputStream sos = response.getOutputStream(); byte b[] = da
首先看一下你的web项目乱码属于那一种症状 一:页面乱码(数据库,class中的数据是正常的,但在视图
//卖家支付宝帐户 String seller_email = new String(request.getParameter("WIDseller_email").get
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号