0
点赞
收藏
分享

微信扫一扫

jsp之 ---- 页面重定向和请求转发(笔记之深度说明)



          1.    ​HttpServletResponse对象的sendRedirect(String location)方法称作重定向。 如果location地址前面加上“/”,则表示

 相对于Servlet容器的根来请求。 即 http://localhost:8080,如果location 地址前米有加上'/',则表示相对于当前请求的URL来寻找地址、 

                            response.sendRedirect("my.jsp");

  (无法获取前面页面的值,即便运用req.setAttribute("name",name) );



      2.  RequestDispatch的forward (request , response)称作请求转发。

                 RequestDispatch rd = req.getRequestDispatcher("my.jsp");

                                            rd.forward(  request ,  response  );

      (即便不用req.setAttribute(“name”,name),运用request.getParameter()也可以获取上一个页面的值,但是如果用req.getAttribute()的话,必须运用​req.setAttribute(“name”,name)否者无法获取上一页的值​)

                             ----------------------这两种在结果上,表面结果是一样的。

     3.请求转发与重定向的区别:

    1). 请求转发,整个过程处于同一个请求当中

jsp之 ---- 页面重定向和请求转发(笔记之深度说明)_java 

  2). 重定向  (实际上有两个请求)

     jsp之 ---- 页面重定向和请求转发(笔记之深度说明)_jsp_02

3)  . RequestDispathcher 是通过调用HttpservletRequset对象的getRequestDispatcher()方法得到的 , 是属于请求对象的方法。。


4) . sendRedirect()是HttpServletResponse对象的方法,那就表明整个请求过程已经结束了 , 服务器开始向客户端返回执行的结果。



编程是一种快乐,享受代码带给我的乐趣!!!


举报

相关推荐

0 条评论