日期:2014-05-17  浏览次数:20742 次

jsp页面间传递数据的问题。
如果我在1.jsp页面传递一个数据id=123给2.jsp,那么这个id存在的时间周期是什么?如果我再从2.jsp访问其他页面,再回来2.jsp后这个id还有么
jsp?数据传递

------解决方案--------------------
存在周期可以看一下网上或者文档中对request对象的解释。
正常情况下id没有了,我猜(未验证)有种情况可能有,就是id=123参数是写在url?后的,然后返回2.jsp是点击浏览器上的后退按钮方式。
------解决方案--------------------
看你怎么传的了,要是用2.jsp?id=123的方法就没有了。
request只在请求时才能得到。。。
------解决方案--------------------
request传值时,参数生命周期就是请求的生命周期。你访问2次页面2,这是2次请求,参数是不能通用的,第一次请求一结束参数也跟着请求对象一起销毁了。
------解决方案--------------------
再次的请求数据没有了
------解决方案--------------------
很明显,从1传到2后,这个参数只是在2中可以获取,和1已经没任何关系了,除非,你把这个参数缓存了,或者用其它方式保存下来。
------解决方案--------------------
2楼和3楼说的是对的。
如果你通过的是URL传递参数,那么从其它页面返回2.jsp时,参数值失效了。
如果你想返回2.jsp参数值还有效的时候,可以保存在session中
------解决方案--------------------
顶一个,楼上正解
------解决方案--------------------
LS正解
------解决方案--------------------
jsp间传值大致有三种方式,1,request,request的生命周期是一个请求,即1.jsp-->2.jsp;2,session,session的生命周期是关闭浏览器前,只要你浏览器不关,且不主动删除,它就一直在;3,cookies,保存在cookies里的值就灵活了,你可以自己设定的