Jsp中文乱码 解决
(2007-04-22 11:36:32)
大多数人对JSP页面中的乱码问题都非常头痛,曾为了解决中文乱码问题郁闷了好几天,试了很多方法都不行。最后在JSP专业人士的帮助下,终于解决。
首先我们先了解一下问题的原因。一般情况在在每个JSP页的头部都有这样一条语句:
<% page contentType="text/html; charset=gb2312" %>这条语句决定了此页面使用GB2312编码形式,而在数据库中一般用的是iso-8859-1字符集存储数据. 而Java程序在处理字符时默认采用统一的ISO-8859-1字符集(体现Java国际化思想),所以在添加数据时,默认的字符集编码是iso-8859-1,而页面采用的是GB2312,所以就出现乱码问题。为解决此问题应在存储的时候把GB2312换转成iso-8859-1。有此时候在读出时也会出现乱码,那么只需反过来就可以了,把iso-8859-1转换成GB2312。
具体实例归纳了以下几点,也许会对大家有一些帮助。
1、在建立JSP页面时应该注意在jsp页面的头部加入一下代码
<% page contentType="text/html; charset=gb2312" %>
此方法是解决JSP页面显示时的乱码。
2、有时还需在HTML代码中的<head></head>中加入这句
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
3、在bean中用的是iso-8859-1编码,在jsp中一般用GB2312编码,处理此类乱码问题如下
String str=new String(strName.getBytes(“iso-8859-1”),”GB2312”);
具体用到此方法的地方为,当提交表单到bean(bean的功能是存储数据到数据库)表单提交后,数据库中存入的数据确变成了????,因此在调用bean之前应对编码进行转换,方法:String str=new String(request.getParameter().getBytes(“iso-8859-1”),”GB2312”);
这样,存入数据库的数据库的数据就可见了。
4、对于页面间的参数传递也可以用这个方法来处理乱码问题:
public String getStr(String str)
{
try
{
String temp_p=str;
byte[] temp_t=temp_p.getBytes("ISO8859-1");
String temp=new String(temp_t);
return temp;
}
catch(Exception e)
{}
return "null";
}
5、在表单定义时加上这个属性有时也可以解决表单提交过程中出现的乱码
<form enctype="multipart/form-data"></form>
6、提交英文字符能正确显示,如果提交中文时就会出现乱码。原因:浏览器默认使用UTF-8编码方式来发送请求,而UTF-8和GB2312编码方式表示字符时不一样,这样就出现了不能识别字符。解决办法:通过request.setCharacterEncoding("gb2312")对请求进行统一编码,就实现了中文的正常显示。
分享到:
相关推荐
### JSP中的中文乱码问题解析与解决方案 #### 一、引言 在Web开发过程中,尤其是使用Java Server Pages(JSP)进行页面渲染时,经常会出现中文字符显示乱码的问题。这不仅影响用户体验,也增加了项目的调试难度。...
本文将深入探讨JSP中文乱码的成因以及提供多种解决方案,帮助开发者有效地处理这类问题。 ### 1. 乱码的可能原因 1. **编码设置不一致**:JSP页面、HTTP请求、响应、数据库等环节的字符编码设置不统一,导致字符在...
### JSP中文乱码解决方法详解 在JSP(Java Server Pages)开发中,中文乱码问题是一个常见的挑战,尤其当涉及到中文字符的输入、输出以及数据库存储时。本文将详细探讨三种常见的JSP中文乱码场景及其解决方案,旨在...
下面将详细解释如何解决JSP中的中文乱码问题,并结合给定的文件内容进行说明。 1. **理解乱码问题**: 中文乱码通常出现在两个场景:一是网页显示的乱码,二是请求数据处理过程中的乱码。前者可能是由于HTML或JSP...
以下是解决Eclipse开发JSP中文乱码问题的详细步骤和知识点: 1. **Project -> Properties -> Resources** 在这里,你可以设置当前项目的文本文件编码。点击“Text file encoding”选项,然后选择“Other”,在下拉...
深入彻底掌握JSP中文乱码解决方案,首先需要理解字符集和编码的概念。字符集(Charset)是一组抽象字符的集合,它可以与特定语言的文字相对应,例如英文字符集,也可以包含有共同特征的字符,如繁体汉字字符集。字符...
总之,解决JSP中文乱码问题的关键在于确保整个请求处理链中的字符编码一致性。从JSP文件编码、HTTP响应到请求参数接收,每个环节都应妥善设置。使用过滤器可以提供一种优雅的全局解决方案,减少重复编码的工作。
JSP 中文乱码问题解决办法 JSP 页面中中文乱码问题是指在 JSP 页面中使用中文时,页面显示乱码的现象。这种问题的解决办法可以从多方面入手,包括设置页面的字符编码、使用 POST 方式提交表单、使用 GET 方式提交...
解决 JSP 中文乱码问题 解决 JSP 中文乱码问题是一个很常见的问题,在 JSP 开发过程中,经常出现中文乱码的问题,可能一至困扰着大家。下面我们将详细讨论 JSP 中文乱码问题的成因和解决方法。 JSP 中文乱码问题的...
解决乱码的各种方法总结,包括数据库的解决方案,个人觉得比较详细有使用价值
jsp中文乱码问题解决 jsp中文乱码问题是jsp开发中常见的问题之一,本文将围绕jsp中文乱码问题的解决展开讨论。首先,我们需要了解jsp中文乱码问题产生的原因,然后再讨论解决方案。 jsp中文乱码问题产生的原因是...
最近实验室做了一个项目,使用jspsmartupload来实现的文件的上传下载,原来在windows平台运行的挺好,但是后来系统移植到linux平台上,结果在上传或下载的文件名中有中文时就会出现乱码。后来查了网上一些人的解决...
本文将深入探讨JSP中文乱码问题的原因,并提供一系列解决方案。 一、原因分析 1. 字符集不匹配:在JSP文件、HTML文件、服务器、数据库等多个环节中,如果字符集设置不一致,就可能导致中文字符在传输过程中无法...
解决 JSP 中文乱码的方案 JSP 中文乱码是动态网站开发中经常遇到的问题,本文将从产生 JSP 中文乱码的四种类型入手,分析乱码产生的原因,并给出消除乱码的具体方法。 一、页面中文乱码的处理 JSP 采用 ISO-8859-...
本篇文章将深入探讨JSP中文乱码问题的原因、解决策略以及预防措施。 一、乱码产生的原因 1. 字符集不一致:JSP页面、Servlet、HTML、CSS、JavaScript、数据库等环节如果使用的字符集不统一,容易导致中文字符在...
jsp中文乱码问题的出现是由于编码格式不一致所导致的,可以通过确保jsp文件的存储格式、解码格式和控制浏览器的解码方式一致来解决乱码问题。同时,在使用Post和Get方式提交表单时,需要指定提交的编码格式,以避免...
本文将深入探讨“JSP乱码”的多种解决方案,并提供实用的解决策略。 1. **理解字符编码的基本概念** - 字符编码是计算机对文字进行存储和处理的标准,常见的有ASCII、GBK、UTF-8等。 - JSP页面默认使用ISO-8859-1...
通过以上四个步骤,你可以有效地解决JSP中文乱码问题。当请求到达服务器时,Filter会自动设置请求和响应的字符编码,确保数据在传输过程中不发生乱码。同时,Tomcat服务器配置的`URIEncoding`确保URL中的中文字符也...