在进行网页中跳转时有两种方式完成,分别是请求转发和请求重定向。
1.请求转发(requestDispatcher)
该动作是服务器行为,在web容器中进行的,客户端对于跳转是不知道的,地址栏中显示的URL是不会变化的
因为请求转发中是一次请求,相同的request,可以在请求中设置属性对象(setAttribute())来实现数据共享
request.getRequestDispatcher(URL).forward(request,response);
2.请求重定向(sendRedirect,也称为间接的请求转发)
该动作是客户端行为,服务器会向客户端返回一个301状态码并携带一个Location属性表名应请求的地址,然后客户端按照服务器返回的地址重新发送请求,地址栏中显示的URL是会变化的
因为请求重定向中是两次不同的请求request,无法实现数据共享

在JavaWeb开发中,请求转发(requestDispatcher)和请求重定向(sendRedirect)是两种常用的页面跳转方式。请求转发是服务器行为,URL不变,可共享数据;而请求重定向是客户端行为,URL会改变,不支持数据共享。
最低0.47元/天 解锁文章
2131

被折叠的 条评论
为什么被折叠?



