• JAVA WEB:请求转发和重定向的区别


     sevlet response有一个重定向的方法我们先介绍一下。

    1.HttpServletResponse对象的sendRedirect(String local)方法称作重定向。如果location地址前面加上

    "/",则表示相对于Servlet容器的根来请求,即http://localhost:8080,如果location地址钱没有加上“/”,则表示相对于当前请求的url来寻找地址。

    2.RequestDispatcher的forward(request, response)称作请求转发

    3.

     请求转发和请求重定向本质的区别是:是否结束了一个request周期,而产生的新的请求

      1)请求转发,整个过程处于同一个请求当中。

      2)重定向,实际上游览器会像服务器发送两个请求。

      3)RequestDispatch是通过HttpServlet对象的getRequestDispatch()方法得到,是属于请求对象的方法。

      4)sendRedirect是HttpServletResponse对象的方法,即响应对象的方法, 既然调用了响应对象的方法,那就表明整个请求过程已经结束了,服务器开始想客户端返回执行的结果。

      5)重定向在firebug中的示意图

  • 相关阅读:
    Spring MVC 拦截器
    spring中MultiActionController的数据绑定
    Hibernate多对多配置
    hibernate实体类配置文件问题(字段使用默认值)
    HibernateTemplate类的使用 (转)
    javascript小笔记(一)
    spring整合hibernate(2)
    Sina AppEngine 的bug
    找工作
    天下武功唯快不破
  • 原文地址:https://www.cnblogs.com/DLzhang/p/4568900.html
Copyright © 2020-2023  润新知