请求转发和重定向的区别(重定向的特点是什么)

admin 886 0

在Servlet中实现页面的跳转有两种方式:转发和重定向

1、 转发

什么是转发:由服务器端进行的页面跳转

原理图

请求转发和重定向的区别(重定向的特点是什么)-第1张图片-前端这点事


转发的方法

请求转发和重定向的区别(重定向的特点是什么)-第2张图片-前端这点事


转发案例:实现从OneServlet中转发到TwoServlet


步骤

1.OneServlet向请求域中添加了一个键和值,转发给TwoServlet

2.TwoServlet就从请求域中取出键和值,打印到浏览器上。


效果

请求转发和重定向的区别(重定向的特点是什么)-第3张图片-前端这点事


代码

OneServlet

请求转发和重定向的区别(重定向的特点是什么)-第4张图片-前端这点事


TwoServlet

请求转发和重定向的区别(重定向的特点是什么)-第5张图片-前端这点事


转发的特点

1.地址栏不发生变化,显示的是上一个页面的地址

2.请求次数:只有1次请求

3.根目录:http://localhost:8080/项目地址/,包含了项目的访问地址

4.请求域中数据不会丢失


转发使用哪个方法?

请求转发和重定向的区别(重定向的特点是什么)-第6张图片-前端这点事


2、 重定向

什么是重定向:由浏览器端进行的页面跳转


原理图

请求转发和重定向的区别(重定向的特点是什么)-第7张图片-前端这点事


重定向方法

请求转发和重定向的区别(重定向的特点是什么)-第8张图片-前端这点事


重定向案例:从OneServlet重定向到TwoServlet


步骤

1.在OneServlet中向请求域中添加键和值

2.使用重定向到TwoServlet,在TwoServlet中看能否取出请求域的值


效果

请求转发和重定向的区别(重定向的特点是什么)-第9张图片-前端这点事


代码


OneServlet


请求转发和重定向的区别(重定向的特点是什么)-第10张图片-前端这点事


TwoServlet

请求转发和重定向的区别(重定向的特点是什么)-第11张图片-前端这点事


重定向的特点

1.地址栏:显示新的地址

2.请求次数:2次

3.根目录:http://localhost:8080/ 没有项目的名字

4.请求域中的数据会丢失,因为是2次请求


3、 疑问

问:什么时候使用转发,什么时候使用重定向?

如果要保留请求域中的数据,使用转发,否则使用重定向。

以后访问数据库,增删改使用重定向,查询使用转发。


问:转发或重定向后续的代码是否还会运行?

无论转发或重定向后续的代码都会执行


4、 小结:重定向和转发的区别

请求转发和重定向的区别(重定向的特点是什么)-第12张图片-前端这点事

成都富士康官网

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~