请求转发(requestDispatcher)和请求重定向(sendRedirect)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sdr_zd/article/details/79189797

在进行网页中跳转时有两种方式完成,分别是请求转发和请求重定向。

1.请求转发(requestDispatcher)

该动作是服务器行为,在web容器中进行的,客户端对于跳转是不知道的,地址栏中显示的URL是不会变化的
因为请求转发中是一次请求,相同的request,可以在请求中设置属性对象(setAttribute())来实现数据共享

request.getRequestDispatcher(URL).forward(request,response);

这里写图片描述

2.请求重定向(sendRedirect,也称为间接的请求转发)

该动作是客户端行为,服务器会向客户端返回一个301状态码并携带一个Location属性表名应请求的地址,然后客户端按照服务器返回的地址重新发送请求,地址栏中显示的URL是会变化的
因为请求重定向中是两次不同的请求request,无法实现数据共享

response.sendRedirect(URL);

这里写图片描述

猜你喜欢

转载自blog.csdn.net/sdr_zd/article/details/79189797
今日推荐