servlet和jsp的转发与重定向代码以及区别-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

servlet和jsp的转发与重定向代码以及区别

简介: 1.首先说明以下重定向和转发的区别 重定向:浏览器发送请求到服务器之后,服务器会发一个状态码和再次请求的地址给到浏览器,浏览器根据地址再次请求服务器的过程。

1.首先说明以下重定向和转发的区别

重定向:浏览器发送请求到服务器之后,服务器会发一个状态码和再次请求的地址给到浏览器,浏览器根据地址再次请求服务器的过程。

转发:浏览器发送请求到服务器之后,服务器处理之后调用内部资源(另一个页面)将结果显示在浏览器上面。

区别:一:重定向发生了两次请求,转发只有一次。

    二:重定向之后浏览器的地址栏会发生改变,转发不会。

    三:重定向可以范围任何资源即使不是同一个web应用,转发只能访问本web应用的资源。

    四:重定向后request域失效不能通过request来共享数据,转发可以。

    五:重定向是浏览器跳转,转发是服务器跳转

2.servlet和jsp中转发与重定向代码实现

servlet:转发:RequestDispatcher rd = request.getRequestDispatcher("hello.jsp");

  //Forward to requested URL
          rd.forward(request, response);

servlet:重定向:response.sendRedirect("http://jakarta.apache.org/struts");

jsp:转发:在JSP页面中,可以使用<jsp:forward>标签来转发请求,例如:
         <jsp:forward page="hello.jsp">

jsp:重定向<%response.sendRedirect("new.jsp");


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章