1.请求转发
请求转发的特点:
1.浏览器的地址栏不发生改变
2.请求转发只发送一个请求
3.共享同一个请求中的数据
4.最终响应给浏览器的由Servlet2决定
5.请求转发不能跨域访问,只能跳转到当前应用的资源中
6.请求转发可以访问WEB-INF目录中的资源(算是间接访问)
2.重定向
URL重定向的特点
1.浏览器地址栏发生改变
2.URL重定向发了两次请求
3.不共享请求中的数据
4.最终响应给浏览器的由Servlet2决定
5.URL重定向能跨域访问,可以访问其他应用中的资源
6.不能访问WEB-INF目录中的资源
3.请求包含
在一个页面中可以包含其他页面的内容
在Servlet中没意义,在JSP中有意义
语法:request.getRequestDispatcher(String path).include(req,resp);
----------------------------------------------------------------------------------
请求转发和URL重定向都支持Web组件之间的跳转,如何选择?
必须使用请求转发:
1)如果需要共享请求中的数据
2)如果需要访问WEB-INF中的资源
如果需要跨域访问,避免表单的重复提交,只能使用重定向。