• servlet内部转发与重定向


    学了俩三天的servlet的内部转发和重定向,今天利用一点时间将servlet的内部转发和重新向进行一个大概总结,由于本人也是初学阶段,如有不对,望谅解!并希望私信我及早改正,希望能帮到大家。


    首先,先将二者的语法背一下,不管会不会用,先记下语法是没错滴!!!

    转发:

    httpServletRequest.getRequestDispatcher("资源路径").forward(httpServletRequest, httpServletResponse);

    重定向:

    httpServletResponse.sendRedirect("/资源路径");

    目的:

    二者都是用来实现页面跳转,给客户端一个响应。


     

    区别:
    虽然二者都是用来实现页面跳转,给客户端一个响应。但是其中还是有很大的差别的,这里就和大家一起探讨下二者原理及不同。

    一:原理

    servlet的转发

    1.请求原理图如下所示:

     

    2.可以简单理解重定向就好比一个人去向A这个人借钱,但是A没有钱,这时候A告诉你B有钱,然后你自己去跑B家去找B借钱

    2.可以简单理解转发就好比一个人去向A这个人借钱,但是A没有钱,所以A又跑去找B这个人借钱,然后把借来的钱再借给你了。

    二:特点

    内部转发 重定向
    转发是服务器行为(这是不经过浏览器的) 重定向是客户端行为。(浏览器重新请求)。
    转发是浏览器只做了一次访问请求 重定向是浏览器做了至少两次的访问请求的(当然也可以重定向多次)。
    转发浏览器地址不变 定向浏览器地址改变。
    转发两次跳转之间传输的信息不会丢失,所以可以通过request进行数据的传递  重定向两次跳转之间传输的信息会丢失(request范围)
     转发只能将请求转发给同一个WEB应用中的组件  重定向可以指向任何的资源,包括当前应用程序中的其他资源,同一个站点上的其他应用程序中的资源,其他站点的资源
  • 相关阅读:
    委托
    Ajax TreeView绑定数据库(一)
    递归算法算出1,1,2,3,5.........(二)
    Ajax技术之深入浅出
    javasript读写xml
    递归算法求阶乘(一)
    关于.Net中的实际开发
    ASP.NET Form表单验证
    js 实现自动合并相同的行
    递归快速排序
  • 原文地址:https://www.cnblogs.com/ma159753/p/13862280.html
Copyright © 2020-2023  润新知