• JSP的九大内置对象


    Java知识点总结:想看的可以从这里进入

    6.4、九大内置对象

    JSP隐式对象是JSP容器为每个页面提供的Java对象,开发者可以直接使用它们而不用显式声明。JSP隐式对象也被称为预定义变量。和serlvet对象相同。

    JSP 内置对象只能在脚本和表达式中使用,在声明中不能使用。

    JSP所支持的九大隐式对象:

    对象描述
    requestHttpServletRequest 接口的实例,保存的数据在一次请求中有效,请求转发会携带(服务器跳转页面后有效,客户端跳转页面后无效)
    responseHttpServletResponse接口的实例
    outJspWriter类的实例,用于把结果输出至网页上
    sessionHttpSession类的实例,保存的数据在一次会话中有效,打开浏览器到关闭浏览器
    applicationServletContext类的实例,与应用上下文有关,数据在服务器有效,打开服务到关闭服务器,所有用户可共享
    configServletConfig类的实例,一个 Servlet 配置对象
    pageContextPageContext类的实例,提供对JSP页面所有对象以及命名空间的访问,保存的数据只在一个页面中有效
    page类似于Java类中的this关键字,属性只在当前 JSP 页面有效,跳转页面后失效。
    exceptionException类的对象,代表发生错误的JSP页面中对应的异常对象

    四大域对象的作用域:page(当前页)→request(一次请求)→session(一次会话)→application(整个应用)

    6.4.1、request对象

    HttpServletRequest对象使用和Servlet一样

    6.4.2、response对象

    HttpServletResponse 的实例对象

    6.4.3、out对象

    JspWriter 的实例对象,包含了很多 IO 流中的方法和特性,最常用的就是输出内容到 HTML 中。

    方法说明
    void print()将内容直接打印在 HTML 标签中
    void println()换行打印
    void newLine()输出换行字符
    void clear()清除页面缓冲区
    boolean isAutoFlush()检查页面是否自动清除缓冲区
    6.4.4、session对象

    HttpSession 的实例对象,主要用来访问用户数据,记录客户的连接信息。

    6.4.5、application

    是 javax.servlet.ServletContext 的实例对象。在服务器部署应用和项目时,Web 容器仅创建一次 ServletContext 实例, application 设置的任何属性和值可以用于整个应用(所有 JSP 页面)。

    实际开发中不推荐使用,否则容易造成内存不足等情况。

    6.4.6、config对象

    是 javax.servlet.ServletConfig 的实例对象,一般用于获取页面和 Servlet 的初始化参数。

    6.4.7、pageContext

    是 javax.servlet.jsp.PageContext 的实例对象。表示整个 JSP 页面,可以获取或删除四大域对象的任意属性:page、request、session、application。

    方 法说 明
    Object findAttribute (String AttributeName)按 page、request、session、application 的顺序查找指定的属性,并返回对应的属性值。如果没有相应的属性,则返回 NULL
    Object getAttribute (String AttributeName, int Scope)在指定范围内获取属性值。
    void removeAttribute(String AttributeName, int Scope)在指定范围内删除某属性
    void setAttribute(String AttributeName, Object AttributeValue, int Scope)在指定范围内设置属性和属性值
    Exception getException()返回当前页的 Exception 对象
    ServletRequest getRequest()返回当前页的 request 对象
    ServletResponse getResponse()返回当前页的 response 对象
    ServletConfig getServletConfig()返回当前页的 ServletConfig 对象
    HttpSession getSession()返回当前页的 session 对象
    Object getPage()返回当前页的 page 对象
    ServletContext getServletContext()返回当前页的 application 对象
    JspWriter getOut()返回当前页的 out 对象
    6.4.8、page对象

    实质是 java.lang.Object 对象,相当于 Java 中的 this 关键字,指当前的 JSP 页面本身,不常用。

    方 法说 明
    class getClass()返回当前页面所在类
    int hashCode()返回当前页面的 hash 值
    String toString()将当前页面所在类转换成字符串
    boolean equals(Object obj)比较对象和指定的对象是否相等
    void copy (Object obj)把对象复制到指定的对象中
    Object clone()复制对象
    6.4.9、exception

    实际上是java.lang.Throwable的对象,代表JSP脚本中产生的错误和异常,在JSP中是无须处理异常,可以设置一个专门的异常处理页面,所有可能出现的异常都可以交给错误处理页面进行处理。

    JSP处理异常是通过指令设置一个专门处理异常的页面error.jsp处理异常,然后其他的页面在指令值指定出现异常时跳转到此页面。

    <%@ page contentType="text/html;charset=UTF-8" language="java" isErrorPage="true" %>
    <%@ page contentType="text/html;charset=UTF-8" language="java" errorPage="error.jsp" %>
    
    • 1
    • 2

    只有指令中设置 isErrorPage=“true” 才可以使用此内置对象,它使用在 JSP表达式 中

    异常类型是:<%=exception.getClass()%>
    异常信息是:<%=exception.getMessage()%>
    • 1
    • 2
  • 相关阅读:
    1.1、Python基础-注释、变量声明及命名规则、数据类型
    SAP Dump:RFC callback call rejected by positive list
    Tomcat中间件打印请求日志
    springboot 基于微信小程序的高校学生疫情在校封闭管理系统的设计与实现 毕业设计源码240904
    老牌好用免费的数据恢复软件easyrecovery操作简单一键恢复
    Serializable 和Parcelable的区别
    python 实验7
    1.5-11:整数的个数
    OpenGauss数据库在 CentOS 上的实践,配置篇
    c# in vs out vs ref
  • 原文地址:https://blog.csdn.net/yuandfeng/article/details/126751403