web组件之间的跳转方式

1.请求转发

web组件之间的跳转方式

请求转发的特点:

1.浏览器的地址栏不发生改变

2.请求转发只发送一个请求

3.共享同一个请求中的数据

4.最终响应给浏览器的由Servlet2决定 

5.请求转发不能跨域访问,只能跳转到当前应用的资源中

web组件之间的跳转方式

6.请求转发可以访问WEB-INF目录中的资源(算是间接访问)

2.重定向

web组件之间的跳转方式

 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中的资源

如果需要跨域访问,避免表单的重复提交,只能使用重定向。