发布于 2015-08-17 14:53:29 | 251 次阅读 | 评论: 0 | 来源: 网络整理
JSP隐含对象是Java对象的JSP容器使提供给开发者在每一个页面中,开发者可以直接调用它们没有被显式声明。 JSP隐含对象也被称为预定义变量。
JSP的支持下面列出了9个隐式对象:
对象 | 描述 |
---|---|
request | This is the HttpServletRequest object associated with the request. |
response | This is the HttpServletResponse object associated with the response to the client. |
out | This is the PrintWriter object used to send output to the client. |
session | This is the HttpSession object associated with the request. |
application | This is the ServletContext object associated with application context. |
config | This is the ServletConfig object associated with the page. |
pageContext | This encapsulates use of server-specific features like higher performance JspWriters. |
page | This is simply a synonym for this, and is used to call the methods defined by the translated servlet class. |
Exception | The Exception object allows the exception data to be accessed by designated JSP. |
request 对象是javax.servlet.http.HttpServletRequest对象的一个实例。每次客户端请求一个页面的JSP引擎创建一个新的对象来表示该请求。
request 对象提供的方法来获得,包括表单数据的HTTP头信息,饼干,HTTP方法等。
我们将看到一整套与请求对象在未来的章节相关的方法: JSP客户端请求.
response 对象是一个javax.servlet.http.HttpServletResponse对象的一个实例。正如服务器创建的请求对象,它还会创建一个对象来表示响应给客户端。
response 对象还定义了处理创造新的HTTP标头的接口。通过这个对象的JSP程序员可以添加新的Cookie或日期标记,HTTP状态代码等。
我们将看到一整套与响应对象在未来章节相关的方法: JSP服务器响应.
out 隐含的对象是javax.servlet.jsp.JspWriter对象的一个实例,用于在发送一个响应内容。
最初的JspWriter对象实例化不同,具体取决于该页面是否被缓冲与否。缓冲可以通过使用page指令buffered='false'属性很容易被关闭。
JspWriter对象包含大部分相同的方法作为java.io.PrintWriter中的类。然而,JspWriter有专门用来对付缓冲一些额外的方法。不同的是PrintWriter对象,JspWriter抛出IOExceptions。
以下是我们将用它来写布尔字符,整数,双精度的对象,字符串等的重要方法
方法 | 描述 |
---|---|
out.print(dataType dt) | Print a data type value |
out.println(dataType dt) | Print a data type value then terminate the line with new line character. |
out.flush() | Flush the stream. |
session对象是javax.servlet.http.HttpSession的实例和行为完全同样的方式,会话对象的行为下的Java servlet。
session 会话对象用于跟踪客户端请求之间的客户端会话。我们将看到在未来的章节会话对象的完整的用法:JSP会话跟踪.
应用对象是围绕着ServletContext对象直接包装器生成的Servlet和现实中的javax.servlet.ServletContext对象的实例。
这个对象是JSP页面在其整个生命周期中的表示。当JSP页面初始化时创建此对象,当JSP页面将被jspDestroy()方法删除。
通过增加一个属性的应用程序,您可以确保所有的JSP文件,使您的Web应用程序可以访问它。
您可以查看一个简单的用一章Application对象: JSP 点击记数器
config 对象是javax.servlet.ServletConfig的实例化,并为周围的ServletConfig对象的直接包装器生成的servlet。
这个对象允许JSP程序员访问Servlet或者JSP引擎的初始化参数,如路径或文件位置等等。
下面的配置方法是你可能永远使用唯一的一个,它的用法很简单:
config.getServletName();
这将返回servlet的名称,它是包含在WEB-INF web.xml文件中<servlet-name>元素定义了字符串。
pageContext对象是javax.servlet.jsp. PageContext 对象的一个实例。pageContext对象被用来代表整个JSP页面。
这个对象的目的是作为访问有关的页面信息,同时避免大部分的实现细节的手段。
此对象存储引用的请求和响应对象为每个请求。该应用程序,配置,会话和输出对象是通过访问这个对象的属性派生的。
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);
您可以查看pageContext中的一个很好的使用在未来的章节: JSP文件上传.
这个对象是一个实际的参考页的实例。它可以被看作是一个对象,它代表了整个JSP页面。
页面对象确实是一个直接的代名词了这个对象。
异常对象是包含异常从以前的页面抛出一个包装。它通常被用来产生到错误条件的适当响应。
我们将看到在未来的章节此对象的完整的用法:JSP异常处理.