zoukankan      html  css  js  c++  java
  • Servlet: 重定向和转发

    1 重定向的概述

    (1)重定向的概念

      首先客户浏览器发送http请求,当web服务器接受后发送302状态码响应及对应新的location给客 户浏览器,客户浏览器发现是302响应,则自动再发送一个新的http请求,请求url是新的location 地址,服务器根据此请求寻找资源并发送给客户。

    (2)重定向的实现

      实现重定向需要借助javax.servlet.http.HttpServletResponse接口中的以下方法:

    方法声明 功能介绍
    void sendRedirect(String location) 使用指定的重定向位置URL,向客户端发送临时重定向响 应

     

    (3)重定向的原理

    ( 4 ) 重定向的特点

        重定向之后,浏览器地址栏的URL会发生改变

        重定向过程中会将前面Request对象销毁,然后创建一个新的Request对象

        重定向的URL可以是其它项目工程

    2 转发的概述

    (1)转发的概念

        一个Web组件(Servlet/JSP)将未完成的处理通过容器转交给另外一个Web组件继续处理,转发 的各个组件会共享Request和Response对象

    (2)转发的实现

        绑定数据到Request对象

    方法声明 功能介绍
    Object getAttribute(String name) 将指定属性值作为对象返回,若给定名称属性不存 在,则返回空值
    void setAttribute(String name,Object o) 在此请求中存储属性值

        获取转发器对象

    方法声明 功能介绍
    RequestDispatcher getRequestDispatcher(String path) 返回一个RequestDispatcher对象,该对象充当位 于给定路径上的资源的包装器

        转发操作

    方法声明 功能介绍
    void forward(ServletRequest request, ServletResponse response) 将请求从一个servlet转发到服务器上的另一个资 源(Servlet、JSP文件或HTML文件)

    (3)转发的特点

        转发之后浏览器地址栏的URL不会发生改变

        转发过程中共享Request对象

        转发的URL不可以是其它项目工程

     

    (4) 重定向和转发的比较

  • 相关阅读:
    JDBC——java连接操作数据库的步骤
    JVM——编译和运行
    base——运算符的用法
    JVM——类的初始化【转】
    JVM——类加载机制
    base——gc方法与finalize方法的区别
    JVM——垃圾回收机制&&jvm内存分配机制
    JVM——虚拟机的简介【摘录】
    2019-06-12_java.lang.RuntimeException: Serialized class com.taotao.common.pojo.SearchItem must implement java.io.Serializable
    2019-06-12_Python-Break语句
  • 原文地址:https://www.cnblogs.com/JasperZhao/p/15268025.html
Copyright © 2011-2022 走看看