zoukankan      html  css  js  c++  java
  • JSP九大内置对象

    一、九大隐式对象

    这些对象是JSP容器为每个页面中的开发人员提供的Java对象,开发人员可以直接调用它们而不用显式地声明它们再调用。 JSP隐式对象也称为预定义变量。

    下面列出了JSP支持的九个隐式对象 

    • request对象

    request对象是javax.servlet.http.HttpServletRequest对象的一个实例。每当客户端请求页面时,JSP引擎将创建一个对象来表示该请求。
    request对象提供了获取包括表单数据,Cookie,HTTP方法等HTTP头信息的方法。

    • response对象

    response对象是javax.servlet.http.HttpServletResponse对象的一个实例。就像服务器创建request对象一样,它还创建一个对象来表示对客户端的响应。
    response对象还定义了处理创建新HTTP头的接口。通过此对象,JSP程序员可以添加新的Cookie或日期戳,HTTP状态代码等。

    • out对象

    out隐式对象是javax.servlet.jsp.JspWriter对象的一个实例,用于在响应中发送内容。
    初始化JspWriter对象根据页面是否缓存而不同地实例化。缓冲可以通过使用page指令的buffered ='false’属性来关闭。

    JspWriter对象包含与java.io.PrintWriter类大部分相同的方法。但是,JspWriter还有一些额外的方法用来处理缓冲。与PrintWriter对象不同,JspWriter会抛出IOExceptions异常。

    • session对象

    session对象是javax.servlet.http.HttpSession的一个实例,其行为与Java Servlet下的会话对象行为完全相同。
    session对象用于跟踪客户端请求之间的客户端会话。

    • application对象

    application对象是生成的Servlet的ServletContext对象的直接包装,实际上是javax.servlet.ServletContext对象的一个实例。

    application对象是JSP页面在其整个生命周期中的表示。 当JSP页面被初始化时,将创建此对象,并且在JSP页面被jspDestroy()方法删除时application对象也将被删除。

    通过向application对象添加属性值,可以确保组成Web应用程序的所有JSP文件都可以访问它。

    • config对象

    config对象是javax.servlet.ServletConfig的实例化,是生成的servlet的ServletConfig对象周围的直接包装。

    • pageContext对象

    pageContext对象是javax.servlet.jsp.PageContext对象的一个实例。pageContext对象用于表示整个JSP页面。

    • page对象

    page对象是对该页面实例的实际引用。可以认为它是表示整个JSP页面的对象。

    page对象是this对象的直接同义词。

    • exception对象

    exception对象是一个包含上一页抛出的异常的包装器。它通常用于生成对错误条件的适当响应。

    二、JSP中四个作用域

    所谓“作用域”就是“信息共享的范围”,也就是说一个信息能够在多大的范围内有效。JSP中九个内置对象及其相应所属作用域如下表:

    编号 对象  所属作用域 作用域描述
    1 request  request  在当前请求中有效
    2 response  page  在当前页面有效
    3 out  page  在当前页面有效
    4 session  session  在当前会话中有效
    5 application  application  在所有应用程序中有效
    6 config  page  在当前页面有效
    7 pageContext  page  在当前页面有效
    8 page  page  在当前页面有效
    9 Exception  page  在当前页面有效

    作用域介绍
    由上图可知,这九个内置对象都有相应的作用域,作用域在这里的作用就是限定对象的生命周期。如果跳出了当前对象的作用域,该对象的信息就不能再被访问。

    ---------------------
    作者:czw17315382516
    来源:CSDN
    原文:https://blog.csdn.net/czw17315382516/article/details/88387178
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    prometheus client_golang使用
    etcd相关知识
    基于kubernetes v1.17部署dashboard:v2.0-beta8
    浅谈 Linux namespace
    使用kubeadm部署K8S v1.17.0集群
    和我一步步部署 kubernetes 集群
    go语言开发(二)---变量
    Golang学习笔记(一)-Go语言环境安装以及运行代码
    pycharm中设置pylint工具
    keeplive使用
  • 原文地址:https://www.cnblogs.com/xjd-6/p/11287693.html
Copyright © 2011-2022 走看看