一、
(1)window 2000 server +Tomcat 5.0 + jdk1.4.2 运行如下代码:
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page info="显示用户注册信息页"%>
<%
String username = request.getParameter("username");
String gender = request.getParameter("gender");
String interest = request.getParameter("interest"); interest = new String(interest.getBytes("ISO8859_1"),"GBK"); //(1)
gender = new String(gender.getBytes("ISO8859_1"),"GBK"); //(2)
username = new String(username.getBytes("ISO8859_1"),"GBK"); //(3)
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head> <body>
<%
//显示用户注册的信息
out.print("恭喜您注册成功!以下是您的注册信息:<p>");
out.print("用户名:"+username+"<br>");
out.print("性别:"+gender+"<br>");
out.print("兴趣:"+interest+"<br>");
%>
</body>
</html>
此时,显示正常,如下:
用户名:李小天
性别:男
兴趣:我是一名电脑爱好者 如果把上面的(1)(2)(3)注释掉,也就是不进行编码转换,则得:
用户名:?????ì?????ì
性别:??
兴趣:????????????°????? (2)window 2000 server +resin-3.0.8 + jdk1.4.2 运行上面的代码结果与Tomcat 5.0下的结果恰恰相反:
直接运行上机的代码的结果:
用户名:??????
性别:?
兴趣:?????????
如果把上面的(1)(2)(3)注释掉,也就是不进行编码转换,则得:
用户名:李小天
性别:男
兴趣:我是一名电脑爱好者郁闷.................................二、
page1.jsp代码如下:
<%
String msg="我是一个jsp初学者";
%> page2.jsp代码如下:
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page import="java.util.*" %>
<%@ include file="page1.jsp" %>
<%
out.print(msg);
%>
在“window 2000 server +Tomcat 5.0 + jdk1.4.2”下运行得
????????jsp???§??
如果我不用page1.jsp,我把msg直接定义在page2.jsp中,则可以得到正确的结果。
可是上面page1.jsp和page2.jsp在“window 2000 server +resin-3.0.8 + jdk1.4.2”下面运行,就可以得到正确的结果。
狂郁闷.........................
请大家帮我解释一下,是不是我的Tomcat 5.0中的配置有问题啊,我用的是装好后默认的,
我是初学者,如果是配有问题,那应该如何配呢?
(1)window 2000 server +Tomcat 5.0 + jdk1.4.2 运行如下代码:
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page info="显示用户注册信息页"%>
<%
String username = request.getParameter("username");
String gender = request.getParameter("gender");
String interest = request.getParameter("interest"); interest = new String(interest.getBytes("ISO8859_1"),"GBK"); //(1)
gender = new String(gender.getBytes("ISO8859_1"),"GBK"); //(2)
username = new String(username.getBytes("ISO8859_1"),"GBK"); //(3)
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head> <body>
<%
//显示用户注册的信息
out.print("恭喜您注册成功!以下是您的注册信息:<p>");
out.print("用户名:"+username+"<br>");
out.print("性别:"+gender+"<br>");
out.print("兴趣:"+interest+"<br>");
%>
</body>
</html>
此时,显示正常,如下:
用户名:李小天
性别:男
兴趣:我是一名电脑爱好者 如果把上面的(1)(2)(3)注释掉,也就是不进行编码转换,则得:
用户名:?????ì?????ì
性别:??
兴趣:????????????°????? (2)window 2000 server +resin-3.0.8 + jdk1.4.2 运行上面的代码结果与Tomcat 5.0下的结果恰恰相反:
直接运行上机的代码的结果:
用户名:??????
性别:?
兴趣:?????????
如果把上面的(1)(2)(3)注释掉,也就是不进行编码转换,则得:
用户名:李小天
性别:男
兴趣:我是一名电脑爱好者郁闷.................................二、
page1.jsp代码如下:
<%
String msg="我是一个jsp初学者";
%> page2.jsp代码如下:
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page import="java.util.*" %>
<%@ include file="page1.jsp" %>
<%
out.print(msg);
%>
在“window 2000 server +Tomcat 5.0 + jdk1.4.2”下运行得
????????jsp???§??
如果我不用page1.jsp,我把msg直接定义在page2.jsp中,则可以得到正确的结果。
可是上面page1.jsp和page2.jsp在“window 2000 server +resin-3.0.8 + jdk1.4.2”下面运行,就可以得到正确的结果。
狂郁闷.........................
请大家帮我解释一下,是不是我的Tomcat 5.0中的配置有问题啊,我用的是装好后默认的,
我是初学者,如果是配有问题,那应该如何配呢?
解决方案 »
- 动态生成下拉列表的问题
- spring web flow 获取全局变量 application
- java.lang.ClassNotFoundException: org.springframework.web.filter.CharacterEncodingFilter
- 有关于树形结构选中的问题求教
- MyEclipse6.0 开发的web项目,发布时出问题了(急!)
- 谁写过进存销系统,是把以前的C/S系统改为B/S系统,给点思路资料或建议吧
- 超链接问题
- JAVA能生成exe文件吗?
- 一个统计查询问题
- jquery(spring) 后台数据,前台访问的问题
- 紧急求助:关于APPLET因客户端装有不同版本的JRE而无法显示!
- 问一个超弱的问题:JSP网页的文件在DREAMWEAVER中不能预览,需要安装什么服务器?
request.setCharacterEncoding("gb2312");
String username = request.getParameter("username");
String gender = request.getParameter("gender");
String interest = request.getParameter("interest");
%>
tomcat5.29.0 不能使用!
在<% %>开头加上上面这一句,就可以保证该页面中字符编码格式
request.setCharacterEncoding("gb2312"); 加不加这句,结果中文都不显示乱码,tomcat我还没有测试,因为只有我家里的机子上装了tomcat,我晚上回去一试,不过我想应该也没有问题。楼上三位我分别把你们的分留下:
wsk_228(qing_feng):20分
viano(有心就有翼,我想我能.......):10分
OnlyFor_love(【光在哪里,荣耀就在哪里】):20分我接着问上面的第二个问题啊,第二个问题是最让我郁闷的,还剩下50分,如果分不够,我可以重新开贴答谢,望大家帮我解决一下啊... 具体问题见上面问题中的 ( 二、)
这一句改为:
<%@ page contentType="text/html; charset=gbk"%>
保证ok
不行,我才全都改成<%@ page contentType="text/html; charset=gb2312"%>的。难道是我昨天晚上测试的时候搞错了?!我晚上回去再试一下,如果大家不是同时熟悉两种环境的,可以说出自己在所用环境中的解决方案: 象这种情况: page1.jsp代码如下:
<%
String msg="我是一个jsp初学者";
%> page2.jsp代码如下:
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page import="java.util.*" %>
<%@ include file="page1.jsp" %>
<%
out.print(msg);
%> 上述代码在Tomcat 5.0,大家的中文部分是否出现乱码?又是如何解决的呢?
报多次定义错误。
假如是这样的话,请确定,传入参数的那个页面,页面的meta编码是不是没有设置,设置成GB2312应该就可以解决问题.
Java的编码,确实比较乱不同的平台,结果也不同.
page1.jsp
<%@ page contentType="text/html; charset=gb2312"%>
<%
String msg="我是一个jsp初学者每天进步一点点";
%>page2.jsp
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.util.*" errorPage="" %>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<%@ include file="page1.jsp" %>
<%
out.print(msg);
%>
<%@ page contentType="text/html; charset=gb2312"%>
OK了,可能是我昨天晚上搞错了^_^