JSP response,request操作中(中文乱码)-如何解决呢?
下文讲述response,request操作中中文乱码的处理方法分享,如下所示:
浏览器接收到数据后按照默认的字符集进行解码后显示
如果浏览器的默认解码字符集不是ISO-8859-1,就出现乱码
当request向服务器发送中文字符时,服务器端获取的乱码 当response向客户端发送中文字符时,客户端接收到的是乱码, 我们在开发中遇到这种问题,就是request,response乱码,那么如何处理此类异常
response中文乱码的处理方法
服务器发给浏览器的数据默认是按照ISO-8859-1编码浏览器接收到数据后按照默认的字符集进行解码后显示
如果浏览器的默认解码字符集不是ISO-8859-1,就出现乱码
处理方法:
设置服务器端编码和客户端编码一致
------------------------------------------------
1.设置服务器端的编码
response.setCharacterEncoding('utf-8”);
2.通知浏览器服务器发送的数据格式
response.setContentType('text/html;charset=utf-8”);
3.jsp页面通知浏览器展示的编码格式
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
request中文乱码的处理方法
处理方法:
1.无论get请求还是post请求,将中文参数进行url编码,用URLEncoder.encode()进行编码传到后台
2.设置pageEncoding=“utf-8”
3.后台接收编码也用 utf-8
4.web.xml设置编码
<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>
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


