JSP - 隐式对象

在本章中,我们将讨论JSP中的隐式对象.这些对象是JSP容器为每个页面中的开发人员提供的Java对象,开发人员可以直接调用它们而无需显式声明. JSP隐式对象也称为预定义变量.

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

S.No.对象&描述
1

请求

这是与请求关联的 HttpServletRequest 对象.

2

响应

这是与客户端响应相关联的 HttpServletResponse 对象.

3

out

这是 PrintWriter 对象,用于将输出发送到客户.

4

会话

这是与之关联的 HttpSession 对象请求.

5

申请

这是与应用程序上下文关联的 ServletContext 对象.

6

config

这是与页面关联的 ServletConfig 对象.

7

pageContext

这封装了服务器特定功能的使用,例如更高性能 JspWriters .

8

page

这只是 this 的同义词,用于调用已翻译的servlet类定义的方法.

9

异常

异常对象允许设计者访问异常数据ed JSP.

请求对象

请求对象是 javax.servlet.http.HttpServletRequest 对象的实例.每次客户端请求页面时,JSP引擎都会创建一个新对象来表示该请求.

请求对象提供了获取HTTP头信息的方法,包括表单数据,cookie,HTTP方法等.

我们可以在后续章节中介绍与请求对象相关的一整套方法.  JSP  - 客户请求.

响应对象

响应对象是 javax.servlet.http.HttpServletResponse 对象的一个实例.就像服务器创建请求对象一样,它也会创建一个对象来表示对客户端的响应.

响应对象还定义了处理创建新HTTP头的接口.通过这个对象,JSP程序员可以添加新的cookie或日期戳,HTTP状态代码等.

我们将在后续章节中介绍与响应对象相关的一整套方法.  JSP  - 服务器响应.

out对象

out隐式对象是 javax.servlet.jsp.JspWriter 对象的一个实例,用于在响应中发送内容.

初始JspWriter对象的实例化取决于页面是否被缓冲.通过使用page指令的 buffered ='false'属性可以轻松关闭缓冲.

JspWriter对象包含大多数与 java.io.PrintWriter 类.但是,JspWriter还有一些其他方法可用于处理缓冲.与PrintWriter对象不同,JspWriter抛出 IOExceptions .

下表列出了我们将用来编写的重要方法 boolean char,int,double, object,String

等.

S.No.方法&描述
1

out.print(dataType dt)

打印数据类型值

2

out.println(dataType dt)

打印数据类型值,然后用换行符终止该行.

3

out.flush()

冲洗流.

会话对象

会话对象是 javax.servlet.http.HttpSession的一个实例并且其行为与会话对象在Java Servlet下的行为完全相同.

会话对象用于跟踪客户端请求之间的客户端会话.我们将在后续章节中介绍会话对象的完整用法.  JSP  - 会话跟踪.

应用程序对象

应用程序对象是生成的Servlet的 ServletContext 对象的直接包装器,实际上是 javax.servlet.ServletContext 对象的实例.

此对象表示JSP页面整个生命周期.初始化JSP页面时会创建此对象,并且当 jspDestroy()方法删除JSP页面时将删除该对象.

通过添加属性应用程序,您可以确保构成Web应用程序的所有JSP文件都可以访问它.

我们将在JSP  -  Hits Counter 章.

配置对象

配置对象是一个实例化的实例. javax.servlet.ServletConfig 并且是生成的servlet的 ServletConfig 对象的直接包装.

这个对象允许JSP程序员访问Servlet或JSP引擎初始化参数,例如路径或文件位置等.

以下 config 方法是您可能使用的唯一方法,并且它的用法很简单 : 去;

config.getServletName();

这将返回servlet名称,该名称是< servlet-name> 元素中包含的字符串> WEB-INF\web.xml 文件.

pageContext对象

pageContext对象是

此对象用于访问有关页面的信息,同时避免大部分实现细节.

此对象存储对每个请求的请求和响应对象的引用. 应用程序,配置,会话和out对象是通过访问此对象的属性派生的.

pageContext对象还包含有关发布到JSP的指令的信息页面,包括缓冲信息,errorPageURL和页面范围.

PageContext类定义了几个字段,包括 PAGE_SCOPE,REQUEST_SCOPE,SESSION_SCOPE, APPLICATION_SCOPE ,用于标识四个范围.它还支持40多种方法,其中大约一半是从 javax.servlet.jsp.JspContext类继承的.

其中一个重要的方法是的removeAttribute 的.此方法接受一个或两个参数.例如, pageContext.removeAttribute("attrName")从所有范围中删除该属性,而以下代码仅从页面范围中删除它 :

pageContext.removeAttribute("attrName",PAGE_SCOPE);

可以在 JSP  - 文件上传</>中检查pageContext的使用情况a>章.

页面对象

此对象是对页面实例的实际引用.它可以被认为是一个表示整个JSP页面的对象.

页面对象实际上是 this 对象的直接同义词.

异常对象

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

我们将在<a href ="https://img01.yuandaxia.cn/Content/img/tutorials/jsp/jsp_exception_handling"中介绍此对象的完整用法. htm"> JSP  - 异常处理章节.