RequestDispatcher接口
在开发中访问到一个web资源后,需要服务器跳转到另一个资源去处理请求,可以通过sendRedirect重定向方法来实现,也可以RequestDispatcher转发对象的forward方法来实现。
得到
转发对象:Requestoispatcher forwardobj=request.getRequestDispatcher("另一个资源的路径”);
常用方法:
1.实现请求转发:forwardobj.forward(request,response);
2.实现请求包含:forwardobj.include(request,response)I
请求转发
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VH9SgRFC-1586742784993)(images\1584489828206.png)]
请求重定向
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XKoBPZGa-1586742784995)(C:\Users\lenovo\AppData\Roaming\Typora\typora-user-images\1584489909367.png)]
-
浏览器地址栏URL的区别
- 请求转发是url没变化
- 请求重定向是url有变化
-
客户端发出的请求数量的区别
- 请求转发是1
- 请求重定向是2
-
方法参数URI的区别
-
请求转发 是 如果以“/”开头,表示当前web应用的根路径
-
请求重定向是 如果以“/”为开头,表示当前web服务器的根路径
-
-
资源访问范围的区别
-
请求转发只能访问本web应用的组件服务器内部
-
响应重定向可以访问本web应用、本web服务和其他站点的组件
-
-
请求对象和响应对象的区别
- 请求转发是和request域对象配合使用,可以实现值得传递
- 请求重定向不是能喝request域对象配合使用
域对象配合使用,可以实现值得传递
- 请求重定向不是能喝request域对象配合使用