注册 登录
编程论坛 J2EE论坛

JSP怎么在页面间共享参数

liangwen0302 发布于 2006-04-04 02:34, 999 次点击
我遇到一个难题,需要在多个页面下共享一个参数。
其实就是一个论坛,需要在不同的文件里传递变化中的表,以实现不同帖子的发表。
各位大虾,多介绍些经验啊!
6 回复
#2
bigboy0002006-04-04 06:30

你可以定义一个session嘛!
我认为这样说可以了,工也是一个菜鸟!

#3
jeremydomett2006-04-04 11:00
<input type="hidden" name="" value="">
也可以的.
#4
liangwen03022006-04-04 13:46
两位可以详细讲解一下吗?我两种方法都试了,可是我不知道怎么传递参数啊!
谢谢!
#5
dabizi12006-04-04 20:27

1.sesion:可以用session(String key,Object obj)其中String key是一个字符串,代表着传递数的名称,Object obj是指你要传的数值,在接受页面可以用String k=(String)session.getAttribute(String key)(String key通常是""的形式)来获取
2,input通常是用在表里也就是<form><input type="" ></from>
  但在做论坛时用以上两种不是很好,还是用超连接的比较好,试试这两个代码:
encode.jsp
<%@ page contentType="text/html; charset=GB2312" language="java" import="java.util.*" errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>字符串编码</title>
</head>
<body>
<center>字符串编码</center>
<hr>
经过编码的字符串
<a href=response.jsp?txtContent=<%= java.net.URLEncoder.encode("欢迎 大家好")%> >
response.jsp? txtcontent=欢迎 大家好</a>
<hr>
未经过编码的字符串
<a href=response1.jsp?txtContent=文字 >
respont.jsp1? txtcontent="欢迎 大家好"</a>
</body>
</html>
response.jsp
<%@ page contentType="text/html; charset=gb2312"%>
<html>
<head>
<title>无标题文档</title>
</head>
<body>
<%request.setCharacterEncoding("gb2312");%>
得到的内容为:<%
String s= request.getParameter("txtContent");
byte b[]=s.getBytes("ISO-8859-1");
s=new String(b);
out.print(s); %>
</body>
</html>
感受一下这种方法

#6
hotleave2006-04-04 20:34
1。用URL重写,如:<a href="login.jsp?action=login">这样就可以把"action" 这个属性传过去了。
接收时用Request.getParameter("action")即可。
2。用<input type="hidded" value="属性值" name="属性名">的办法可以实现,不过这些值会被别人看到。
获得方法和前一个一样。
3。可以用session的办法。session.setAttribute("属性名",属性值);这样可以保存。在获得的时候用session.getAttribute("属性名")即可获得该属性的值。当不想再用这个值时,可以用session.removeAttribute("属性名")来去掉该值。
#7
神vLinux飘飘2006-04-04 21:51
如果是整个系统都需要共享一个变量,可以采用Application
如果是用户个人页面间需要共享一个变量(比如:页面权限验证),可以用Session
如果是一些临时的变量想要临时的传送给其他表以达到共享的目的,可以用Request
1