重定向与请求转发的区别(十四)

重定向和转发的区别:

1. 请求转发时服务器内部跳转,只有一次请求一次响应,

    重定向是两次请求,两次响应。

2. 请求转发,是服务器内部操作,他不会影响地址的路径

    重定向时两次请求,地址栏会变化。

3. 请求准发只能在当前站点内跳转,

    重定向可以跳出站内。

4. 请求转发是由request发起的。request.getRequestDispatcher("").forward(request, response);

    重定向response.sendRedirect();

5.请求转发时,它的路径 “/”代表的是当前工程,服务器端路径

   重定向,它的路径 "/" 代表的是服务器根目录。客户端路径。

   request.getRequestDispatcher("/").forward(); 这时的/相当于当前虚拟目录名称  http://localhost:8080/day8_2

   response.sendRedirect("/");  它相当于是 http://localhost:8080

   服务器端/代表当前web应用程序的根目录

   客户端/代表服务器根目录

6. 请求转发中存在request域。

    重定向不存在request域。

猜你喜欢

转载自blog.csdn.net/Ada_yangyang/article/details/82384390