1.调用JSP页面出现乱码:
- 通过浏览器调用JSP页面,在浏览器中显示中文内容出现乱码。
- 首先确认JSP文件在编辑器中保存为“UTF-8”,然后在JSP页面中添加“<%@ pageEncoding="UTF-8" %>”即可解决中文乱码问题。
2.调用Servlet页面显示乱码
- 通过浏览器调用Servlet,Servlet中通过PrintWriter输出地中文出现乱码。
- 在Servlet使用response对象输出之前,先执行“response.setContentType("text/html;charset=utf-8")”
3.POST表单传递中文参数乱码
- 通过JSP页面、HTML页面或者Servlet中的表单元素提交参数给对应的JSP页面或者Servlet,接收者接收的中文参数值乱码。
- 在接收POST提交的参数之前,使用“request.setCharacterEncoding("utf-8")”设定接收参数的内容使用utf-8编码
- 更好的解决方法:使用过滤器技术。
4.URI方式传递参数乱码(就是在URL后面添加参数:http://localhost:8082/app/encode.do?name=靓仔)。
- 使用表单传递参数,可以通过POST或者GET方式。不使用表单,还可以使用链接方式传递参数,这种传递参数的方法本质上是GET方式传递参数,这种传递参数的值是中文,也会出现乱码(即使是使用了第3点解决乱码的方法),
- 有一个解决方法:修改tomcat配置文件:进入“/conf/server.xml”文件,将以下配置修改(此方法不推荐,因为移植性相当差)
<Connector connectionTimeout="20000" port="8082" protocol="HTTP/1.1" redirectPort="8443"/>
修改后配置:
<Connector connectionTimeout="20000" port="8082" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>
- 在发送参数前对参数进行urlEncode,接收时使用java.net.URLDecoder.decode(String, "utf-8")
5.Properties文件乱码
- 在使用一些类库或者框架时(例如:JSTL Format标记库、Displaytag标记库和Struts框架),为了实现页面内容的国际化,需要编写对应的Properties文件,而Properties文件中的中文内容在显示的时候也会出现乱码。
- 使用Eclipse插件“Properties Editor”:http://propedit.sourceforge/
分享到:
相关推荐
JavaWeb乱码问题终极解决方案.docx
乱码透析
可以解决 javaweb乱码的完整的 方案
主要给大家介绍了关于JavaWeb乱码问题的终极解决方案,文中通过示例代码介绍的非常详细,对大家学习或者使用JavaWeb具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
[总结]JavaWeb乱码问题 [转自IBM]中文编码问题 JDBC入门 Jdbc事务控制管理 常用数据库连接池 编写JDBC框架 客户信息管理系统 Servlet Filter 过滤器 HTTP 协议 文件上传和下载 Servlet事件监听器 JavaMail开发 ...
字符与字节之间的转换是通过查码表完成的,将字符转成字节的过程称为编码,将字节转换成字符的过程称为解码,如果编码和解码使用的码表不一致,就会导致乱码问题。通过本案例来解决中文输出乱码问题。 使用...
关于处理Javaweb中中文乱码的问题文.pdf
中文乱码javaWEB开发各种解决中文乱码问题
介绍javaweb项目中出现乱码问题的解决方案。并介绍如何统一开发环境、应用服务器、本机浏览器的编码格式。
JavaWeb中字节乱码filter解决办法,其中包括tomcat各个版本进行字符设置.
深入分析JavaWeb中文编码问题.doc
利用过滤器解决JavaWeb(JSP)的乱码问题
解决JavaWeb开发中Jsp存储读取MySQL数据中文乱码的问题.pdf
解决全站编码问题的javaWeb小项目
利用过滤器解决JavaWeb(JSP)乱码问题
中文乱码问题是JavaWeb开发中最常见的问题之一,解决的方法也有很多种,其中,过滤器是最常用的方法之一。提供了过滤器的源码和详细配置。
JavaWeb开发技术-解决中文输出乱码问题.pptx
通杀所有java乱码
讲述javaweb开发中的jsp乱码问题 get、post的区别 http协议的图解