利用response对象的sendRedirect方法跳转到下一页面,能保存什么范围的属性?本人新手,知识面还是很多,请大神们帮我解答一下!
3条回答
- threenewbee 2015-05-12 14:13关注
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);
解决 无用评论 打赏 举报
悬赏问题
- ¥15 shape_predictor_68_face_landmarks.dat
- ¥15 slam rangenet++配置
- ¥15 有没有研究水声通信方面的帮我改俩matlab代码
- ¥15 对于相关问题的求解与代码
- ¥15 ubuntu子系统密码忘记
- ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
- ¥15 保护模式-系统加载-段寄存器
- ¥15 电脑桌面设定一个区域禁止鼠标操作
- ¥15 求NPF226060磁芯的详细资料
- ¥15 使用R语言marginaleffects包进行边际效应图绘制