急,怎样传递参数?

newleave840617 2004-09-28 09:14:18
各位好:

在页面刷新时,我传递vector变量,传递后是一个字符串类型,怎样传可以使得传过去的vector变量不变啊?
谢谢
...全文
111 点赞 收藏 12
写回复
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
newleave840617 2004-09-28
那我该怎样在该方法里定义req变量,由于该方法是一个特殊的类,我不能在方法参数里加上HttpServletRequest req
回复
xunyiren 2004-09-28
晕,public HttpSession sess=null;这能不错吧,这样在sess.setAttribute("datarows",DataRows);时会出现空指针异常;改为
public HttpSession sess=req.getSession();(注意req,改为你代码中的HttpServletRequest类型的变量)
回复
newleave840617 2004-09-28
public HttpSession sess=null;
回复
xunyiren 2004-09-28
你的sess是怎么得来的,贴代码!!
回复
newleave840617 2004-09-28
改为
session.setAttribute("datarows",DataRows);有什么区别吗?
sess,session都是HttpSession的对象,不是吗?
回复
xunyiren 2004-09-28
sess.setAttribute("datarows",DataRows);改为
session.setAttribute("datarows",DataRows);或request.getSession().setAttribute("datarows",DataRows);
回复
newleave840617 2004-09-28
我在一个方法里设置session
try{
sess.setAttribute("datarows",DataRows);

}catch(Exception e)
{
System.out.println("session error!");
}
在另一个方法想得到其值
DataRows=(Vector) req.getAttribute("datarows");
提示session error!错误,也就是说我没有为datarows赋值,这是怎么回事?
回复
边城狂人 2004-09-28
页面参数和 session 之间是不会产生冲突的
回复
newleave840617 2004-09-28
我页面刷新时已经提交了几个参数,再用session会不会引起冲突呢
回复
johncui 2004-09-28
Vector是被串行化后在页面间传递的,那么获得后,实际上就是字符串,必须重新强制类型转换。利用语句 :(Vector)session.getAttribute("obj");就可以了。另外,利用session在页面中传递参数,会因为session的生命周期问题,若不显式清空,会造成资源过多的浪费。应该采取别的方法。
回复
victorylj 2004-09-28
同意楼上
回复
xunyiren 2004-09-28
用session吧!
设:session.setAttribute("obj",ojb);
取:(obj)session.getAttribute("obj");
回复
发动态
发帖子
Web 开发
创建于2007-09-28

7.9w+

社区成员

Java Web 开发
申请成为版主
社区公告
暂无公告