重定向与请求转发

一、语法:

重定向:

  response.sendRedirect("URL");

请求转发:

  request.getrequestdispatcher("URL").forware(request,response);

  URL表示将要跳转的页面

二、区别

     (个人通俗理解:就一个员工来举例说明,重定向相当于这个员工跳槽,新的公司与原来的公司没有任何关系,意味着URL地址会变化,也不可以获取原页面的参数;请求转发相当于这个员工被指派到分公司工作,他还是在同一家公司工作,带有这个公司的标签,还是和这个公司签有劳动合同,这也就意味着跳转之后的URL地址不会改变,同时可以获取传过来的对象Request和Response。)

1、浏览器显示

     重定向会改变URL地址,请求转发不会改变URL地址。

2、资源共享

     重定向可以资源共享,请求转发不可以。

3、功能

    重定向可以用URL绝对路径访问其他Web服务器的资源,而请求转发只能在一个Web应用程序内进行资源转发,即服务器内部的一种操作。

4、效率

    重定向效率低,相当于再一次请求;请求转发效率相对较高,跳转仅发生在服务器端。

    

原文地址:https://www.cnblogs.com/darren0415/p/6039566.html