日期:2014-05-16 浏览次数:20508 次
乱码是让人头疼的一件事情,您是否和我一样也遇到过这样的情况,向数据库中添加一条记录,记录是添加上了,到数据库里一看,数据凌乱了。。。顿时我也凌乱了。。。把html文件改为jsp文件,添加了一下jsp page指令重新打开同时发现所有的中文都七十二变了。。是否。。下面我们就一起看看java web中的中文乱码问题。
我们的PageCharset.jsp页面代码如下所示:
<%@ page language="java" import="java.util.*"%>
<html>
<head>
<title>中文显示示例</title>
</head>
<body>
中文显示的示例。
<%
out.print("这里是用jsp输出的中文");
%>
</body>
</html>
当我们在保存我们的文件的时候会出现下面的提示:

整因为在我们的MyEclipse中默认的编码为ISO-8859-1,而ISO-8859-1不支持中文的编码,所以jsp页面代码如果出现中文就不能保存了。对于这样的错误,我们只要在页面上加上支持中文的编码格式就可以了,在jsp页面中加上pageEncoding=“gb2132”
支持中页面的编码格式就可以了。这样我们就能正常保存我们的jsp源文件了。
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<html>
<head>
<title>URL传递参数中英文处理示例</title>
</head>
<%
String param = request.getParameter("param");
%>
<body>
<a href="URLCharset.jsp?param='中文'">请单击这个链接</a>
您提交的这个参数为:<%=param %>
</body>
</html>
启动tomcat运行结果出现url传递的中文乱码:

这里我们需要配置tomcat服务器文件,才能解决这个问题。具体方法是,在tomcat的conf目录下找到server.xml配置文件,找到如下代码
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
在后面添加上编码方式,URIEncoding="gb2312" 重新启动tomcat问题就解决了。
对于表单中提交的数据,可以用request.getPraramter("");方法来获取,但是当表单中出现中文数据的时候就会出现乱码。
我们的提交表单的页面,FormCharset.jsp页面如下:
<%@ page language="java" contentType="text/html; charset=GB18030"
pageEncoding="GB18030"%>
<!DOCTYPE