首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

request.setAttribute的有关问题

2012-02-21 
request.setAttribute的问题我在页面A.jsp里面用到request.setAttribute( a , love )然后在A.jsp页面

request.setAttribute的问题
我在页面A.jsp里面用到request.setAttribute( "a ", "love ");   然后在A.jsp页面里使用response.sendRedirect( "B.jsp ");在B.jsp里用request.getAttribute( "a ");取值,得到的却是空,为什么request.setAttribute()不能将值传递到下一个页面去呢?换成session就没问题

[解决办法]
response.sendRedirect 会产生新的request
[解决办法]
sendRedirect会清空request里面的数据的
[解决办法]
楼上两位说的是其一
request和
session这两个的作用范围..

-----------------
J2EE技术交流QQ群:6890959
欢迎大家加入,
一起切磋交流,
共同进步!
群空间有很多好东西下载..
[解决办法]
1.request请求对象的作用域只限在当前的一次请求。
方法一:response.sendRedirect( "请求的资源的URL ");
如:response.sendRedirect( "index.do ");response.sendRedirect ( "index.jsp ");response.sendRedirect( "indexServlet ");叫请求重定向。
这个会是上次的请求对象的值全部丢失。
方法二:request.getRequestDispatcher( "index.do ").forward(request,response);
request.getRequestDispatcher( "index.jsp ").forward(request,response);
request.getRequestDispatcher( "indexServlet ").forward(request,response);
叫请求转发,它会延长request的生命周期。



[解决办法]
Redirect 是重定向
[解决办法]
方法二:request.getRequestDispatcher( "index.do ").forward(request,response);
request.getRequestDispatcher( "index.jsp ").forward(request,response);
request.getRequestDispatcher( "indexServlet ").forward(request,response);
叫请求转发,它会延长request的生命周期。
这个真的能延长request的生命周期????????????????
你从哪看来的....
楼主可以把要传的值以参数形式传到下个页面.
[解决办法]
response.sendRedirect( "B.jsp ");只是重定向,浏览器端跳转,不能传送数据

所以要用RequestDisPatcher
例如:
RequestDisPatcher view = request.getRequestDispatcher( "B.jsp ");
view.forword(request,response);
[解决办法]
楼上正解.可以用FORWARD
[解决办法]
up

RequestDisPatcher view = request.getRequestDispatcher( "B.jsp ");
view.forword(request,response);

热点排行