利用response对象的sendRedirect方法跳转到下一页面,能保存什么范围的属性?

利用response对象的sendRedirect方法跳转到下一页面,能保存什么范围的属性?本人新手,知识面还是很多,请大神们帮我解答一下!

3个回答

response.sendRedirect是通过浏览器来做转向的。

假设在A.jsp页面设置request.setAttribute("username","admin");

那么在 request.sendredirect 转向的B.jsp页面中是不能通过request.getAttribute("username"); 来得到admin的。

这是因为上个页面请求已经结束,也就是 request这个对象已经消亡了。所以也就得不到admin了。

可以使用request.getDispatcherHeader(B.jsp").forward(request,response);在B.jsp页面就可以得到admin了。

此外要说明:如果你的jsp页面是在webroot目录下,那么在response.sendRedirect(参数);参数中的路径是不同的。

response.sendRedirect(参数);应该是:response.sendRedirect(request.getContextPath() + "/B.jsp");

而在request.getDispatcherHeader(参数).forward(request,response);应该使用request.getDispatcherHeader("B.jsp").forward(request,response);

qq_20286709
qq_20286709 session属性 能保存吗?
5 年多之前 回复
qq_20286709
qq_20286709 当前页面的请求的数据能保存吗?
5 年多之前 回复

session/application/

qq_20286709
qq_20286709 ???? 请大神帮忙
5 年多之前 回复

重定向?不能保存属性吧。用session保存吧。要不就用request转发的那个方法

qq_20286709
qq_20286709 重定向 就是本页面的数据请求也不能保存是吧?只能保存session属性的内容把?
5 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问