码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA2E servlet的跳转

时间:2017-11-29 19:46:08      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:转发   跨域   dispatch   inf   nbsp   red   访问百度   拷贝   包含   

关于Servlet的跳转有三种方式:eg:源地址/a1,目标地址/a2 

  1。请求转发:req.getRequestDispatcher("/a2").forward(req,resp); forward要提交给目标地址/a2  原理:浏览器请求/a1,然后/a1请求/a2,/a2响应给/a1。然后由/a1响应给浏览器。

    a:浏览器地址栏不发生改变,依然是/a1不是目标地址/a2。

    b:请求转发浏览器只发送一个请求。

    c:共享同一个请求中的数据。

    d:最终响应给浏览器由a2决定。

    e:请求转发不能跨于访问,不能访问百度,只能跳转到当前应用中的资源,外界不能直接访问WEB-INF文件夹,请求转发可以。

  2。URL重定向:resp.sendRedirect("/a2") ,原理:浏览器请求/a1,然后响应给浏览器,浏览器再请求/a2,再响应给浏览器

    a:浏览器地址栏发生改变,不是/a1而是目标地址/a2。

    b:URL重定向浏览器发送两次请求。

    c:由于是两个请求所以不共享请求中的数据。相当于直接将目标地址拷贝到浏览器。

    d:最终响应给浏览器由a2决定。

    e:请求转发可以跨域访问,可以访问baidu,外界不能直接访问WEB-INF文件夹,URL重定向不行。

  3。请求包含:

JAVA2E servlet的跳转

标签:转发   跨域   dispatch   inf   nbsp   red   访问百度   拷贝   包含   

原文地址:http://www.cnblogs.com/paoxiaoqianzibi/p/7922139.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!