nosoftman 2011-06-10 00:51
浏览 452
已采纳

response.setHeader("refresh","5;url=success.jsp?idname="+id);传递中文参数问题

小弟最近刚学jsp,有个问题一直闹不明白,翻了好久资料也没找到答案。这个题目的要求是输入中文,如果不含有这个中文的话就会跳转到welcome.jsp页面,并且五秒后自动跳转到success.jsp页面,目前只有一个闹不明白,就是welcome.jsp中的response.setHeader("refresh","5;url=success.jsp?send="+str);,传递到success.jsp页面时是乱码,求解。。。。

具体源码如下:

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>a</title>
</head>

<body>
<form action="b.jsp" method="get" name="form1">
    <p>请输入内容: <input type="text" name="fname" /></p>
    <input type="submit" value="Submit" />
   </form>
</body>
</html>
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.util.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>b</title>
<%!LinkedList listname=new LinkedList();%>
</head>
<body>
<%
String str=request.getParameter("fname");
if(listname.contains(str))
{
%>
<jsp:forward page="fail.jsp"/>
<%
}
else{
listname.add(str);
%>
<jsp:forward page="welcome.jsp">
<jsp:param name="good" value="<%=str%>"/>
</jsp:forward>
<%
}
%>
</body>
</html>
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" pageEncoding="gb2312" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>refresh</title>
</head>

<body>
<%
 String str=request.getParameter("good");
 byte b[]=str.getBytes("iso-8859-1");
 str=new String(b,"gb2312");
 %>
 <p>添加<%=str%>成功, 页面将五秒钟实现跳转。</p>
 <%
  response.setHeader("refresh","5;url=success.jsp?send="+str);
 %>
 <p>否则点击<a href="success.jsp?send=<%=str%>">此处跳转</a></p>
</body>
</html>
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" pageEncoding="gb2312" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>success</title>
</head>
<body>
<%String str=request.getParameter("send");
 byte b[]=str.getBytes("iso-8859-1");
 str=new String(b,"gb2312");
 %>
创建成功 <%=str%>
</body>
</html>
  • 写回答

2条回答 默认 最新

  • qianzhi008 2011-06-10 12:12
    关注

    传递url之前,先统一一下编码格式。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥50 汇编语言除法溢出问题
  • ¥65 C++实现删除N个数据列表共有的元素
  • ¥15 Visual Studio问题
  • ¥15 state显示变量是字符串形式,但是仍然红色,无法引用,并显示类型不匹配
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗