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
分享到:
相关推荐
有时候,我们在中文系统平台下开发的 Web 应用程序移植到英文系统平台下,在 Servlet 和 JSP 中直接书写的中文字符串在输出时,将显示为乱码。这是因为在编译 Servlet 类或者 JSP 文件时,如果没有使用 -encoding ...
### Java Web 开发中解决乱码问题的全面指南 #### 一、乱码问题概述 在Java Web开发过程中,乱码问题是开发者经常会遇到的问题之一。它通常发生在处理含有中文或其他非ASCII字符的数据时。本篇文章将详细介绍在...
在Java编程中,中文乱码问题是一个常见的困扰,尤其是在处理文件读写、网络传输或数据库操作时。本文将深入探讨几种解决Java中中文乱码问题的方法,并以MyEclipse为开发环境,结合实际示例进行讲解。 1. 文件读写中...
Java中文乱码问题是编程者在开发Java应用程序时经常遇到的问题,尤其是涉及到中文字符处理时。这些问题产生的根本原因在于Java内部采用UNICODE编码,而不同的操作系统和浏览器可能支持不同的编码格式,如Windows中文...
通过上述方法,可以有效地解决Java Web应用中常见的乱码问题,提高用户体验和系统的稳定性。此外,对于更复杂的多语言环境,还应该考虑采用国际化和本地化策略,以更好地支持不同地区的用户需求。
总的来说,Java语音技术和Web乱码问题都是开发者在实际工作中需要掌握的重要技能。前者让应用程序更加人性化,后者则关乎用户界面的清晰度和用户体验。了解并熟练运用这些知识,对于提升软件质量和用户体验至关重要...
character-encoding-filter 是 Java Web 乱码过滤器。 web.xml <filter-name>character-encoding-filter <filter-class>com.github.zhanhb.filter.CharacterEncodingFilter</filter-class> ...
### Java中文乱码问题详解 #### 一、中文问题的来源与背景 计算机技术发展初期,操作系统主要支持单字节的ASCII字符集。随着全球化进程加快和技术进步,为支持多种语言,尤其是双字节编码的语言(如中文),提出了...
相信web站点乱码问题都曾使我们困惑加郁闷不少,在此我积累了几点解决方案,用于解决不同情况下的乱码问题,希望能对各位有些许提示作用。 首先应确定不是因为浏览器的原因导致中文乱码。 本人在刚用firefox...
Java 中文乱码问题是一个常见的编程困扰,尤其对于处理中文字符的Java程序而言。这个问题通常源于字符编码的不一致,即不同环节采用的字符编码标准不统一。本文将深入探讨这一问题,并提供相应的解决方案。 首先,...
本篇文章将深入探讨如何处理JSP、TOMCAT环境下的Java Web乱码问题。 1. **JSP页面乱码** JSP页面中的乱码通常发生在两个阶段:源代码编写阶段和运行时输出阶段。在编写JSP源代码时,确保编辑器使用正确的字符集...
### Java Web 开发中的中文乱码问题及其解决方案 在Java Web开发过程中,中文乱码问题是一种常见的技术难题,尤其在处理客户端与服务器间的数据交互时更为突出。本文将详细介绍Java Web开发中出现乱码的原因,并...
Java中文乱码问题是Java开发中常见的问题,尤其是在Web开发中,乱码问题会导致页面显示混乱,影响用户体验。解决乱码问题需要了解编码的基本原理和各种编码格式的区别。 编码的原因可以总结为两点:计算机中存储...
Java开发乱码问题解决方法汇总 Java开发中乱码问题是非常常见的问题之一,而解决这些问题需要具备一定的技术知识和经验。在本文中,我们将总结一些常见的Java开发乱码问题解决方法,希望能够为读者提供帮助。 1. ...
Java 中文乱码问题是一个老生常谈的问题,特别是在 Web 应用中。今天,我们将从编码角度分析 Java 编译后在控制台和 Web 等终端显示乱码问题。 一、 Java 处理字符的原理 Java 使用 UNICODE 来存储字符数据,处理...
在Java Web应用中,由于字符编码不一致,可能会导致输入或输出数据出现乱码。过滤器可以用来统一设定字符编码,确保数据正确地被编码和解码。以下是一般步骤: 1. 在`web.xml`中配置过滤器,指定过滤器类和URL模式...
在Java开发过程中,中文乱码问题常常令人头疼,尤其是在Web应用中,客户端提交的数据经常会出现编码不一致导致的乱码问题。本文将介绍几种解决Java中中文乱码的方法,希望能对您有所帮助。 #### 方法一:转换请求...
这里总结了我在j2ee开发过程中,中文乱码的解决方案。希望能够帮到大家!