java web乱码浅析
分析过程不说了,直接说结果。
一。对于QueryString的解析
- 对urlencode 解析错误这个错误源于过时的javax.servlet.http.HttpUtils类
HttpUtils.parseQueryString(arg0) 这个类在解析中使用ISO-8859-1
字符集解析字符串
-
(貌似规范要求这么做的)
二。对于post正文请求的解析
- 对于post的解析一般能正常解析。但是在第一次调用request.getParameter后设置编码无效,所以很多时候使用过滤器来解决这个问题,过滤会第一个获取到request并设置好惨。
- 在未设置编码(setCharacterEncoding)时使用ISO-8859-1
。。。解析
三。解决办法
- 对于QueryString我们可以直接拆解字符串进行解析(URLDecoder.decode(str, "UTF8"))
- 对于post数据在容器第一次解析我们不能获取到请求正文流和数据。可以使用new String(str.getBytes("ISO-8859-1
"),"UTF8") 解析
- 最彻底的办法,,自己写包装器在过滤器或者框架内对解析进行包装。
- 我们公司使用包装器在框架内解决,应用层一般不接触到HttpServletRequest
刚才看了apache的实现,直接用的把%后面的当成16进制解析成char
分享到:
相关推荐
解决Java_Web开发中Jsp存储读取MySQL数据中文乱码的问题
character-encoding-filter 是 Java Web 乱码过滤器。 web.xml <filter-name>character-encoding-filter <filter-class>com.github.zhanhb.filter.CharacterEncodingFilter</filter-class> ...
相信web站点乱码问题都曾使我们困惑加郁闷不少,在此我积累了几点解决方案,用于解决不同情况下的乱码问题,希望能对各位有些许提示作用。 首先应确定不是因为浏览器的原因导致中文乱码。 本人在刚用firefox...
很好用,很全面的解决java Web开发的解决中文乱码的文档
这里总结了我在j2ee开发过程中,中文乱码的解决方案。希望能够帮到大家!
解决在javaweb开发的过程中遇到的乱码问题,纯属个人在学习中的总结。
java web过滤器使用方法,含自动登陆和乱码的过滤器。很适合数学java web的人看,有注释。
Java Web程序开发中字符乱码的原因与解决办法.pdf
一、服务器端以字节码的形式向客户端发送数据: 1、服务器端默认采用本地编码发送数据。 2、设置客户端编码: ...charset=UTF-8"); 2.2 在页面中加入如下:<...charset=UTF-8'>... OutputStream out = ...
JAVA Web 中文乱码问题
解决java web开发中遇到的前后台传值乱码问题。
常用java转码方法,以及绕过web服务器二次编码技术。
从编码角度分析了java编译后在控制台和web等终端显示乱码问题。
Java WEB开发中的中文乱码问题解决方法.pdf
Java Web开发中的乱码问题.pdf
为应用程序加上语音能力有什么好处呢?粗略地讲,是为了趣味
在java Web应用开发常见的问题中,中文的乱码问题在页面中没有统一的方法解决,造成程序员浪费大量的时间与精力且代码效率不高,因此提出了新的乱码算法,并设计了通用的乱码处理器,提高了程序员的工作效率.
Java Web编程宝典-十年典藏版.pdf 是PDF电子书,不是源码。共分2个包。 《Java Web编程宝典(十年典藏版)》是一本集技能、范例、项目和应用为一体的学习手册,书中介绍了应用Java Web进行程序开发的各种技术、技巧。...
F:\文档\PDF格式学习资料\主题:Java Web开发(JSP、Servlet)乱码终极解决方案.txtF:\文档\PDF格式学习资料\主题:Java Web开发(JSP、Servlet)乱码终极解决方案.txtF:\文档\PDF格式学习资料\主题:Java Web开发...
解决web项目中出现的乱码问题,很方便,只要一个java文件,同时在web.xml文件中配置该java文件就OK了 ,很方便的