购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.3 JSP隐含对象

JSP隐含对象是JSP为我们提供的,无须任何声明就可以直接使用的对象。

JSP为我们提供了 9 个隐含对象,见表3-6。

表3-6 JSP隐含对象列表

3.3.1 page对象

page对象代表JSP页面本身,是this变量的别名,对JSP页面创建者通常不可访问。作为JSP开发人员一般很少使用该对象。

3.3.2 config对象

config 对象是ServletConfig类的一个对象,存放着一些Servlet 初始的数据,且只有在JSP页面范围内才合法。config对象提供了一些访问应用级初始化参数、Servlet上下文和Servlet名字的方法,见表3-7。

表3-7 config对象的常用方法

3.3.3 out对象

JSP页面的主要目的是动态产生客户端需要的HTML结果,人们通常使用out.print( )和out.println( )将结果输出到网页上。out提供了一些用来控制管理输出缓冲区(buffer)和输出流(output stream)的方法,见表3-8。

表3-8 out对象的常用方法

用法举例(见例程3-4)。

例程3-4 out.jsp

out.jsp运行效果如图3-5所示。

本节实例的完整源代码请参考配套光盘的“源代码”部分。

图3-5 out.jsp运行效果

3.3.4 request对象

request对象封装了由客户端生成的HTTP请求的所有细节(请求参数、属性、请求头信息、cookies及数据)。request 对象实现了javax.servlet.http.HttpServletRequest接口,提供的方法见表3-9。

表3-9 request对象的常用方法

用法举例(见例程3-5)。

例程3-5 request.jsp

request.jsp运行效果如图3-6所示。

图3-6 request.jsp运行效果

本实例的完整源代码请参考配套光盘的“源代码”部分。

3.3.5 response对象

response对象用于向客户端发送响应数据。response对象实现了javax.servlet.http.HttpServletResponse接口,提供的方法见表3-10。

表3-10 response对象的常用方法

用法举例(见例程3-6)。

例程3-6 response.jsp

本实例的完整源代码请参考配套光盘的“源代码”部分。

3.3.6 Session对象

大家都知道HTTP是无状态的通信协议,Web服务器为了区别不同的用户和跟踪用户的操作状态,在Java Servlet API中使用Session机制来实现。存放于服务器端的Session对象中保存每一个用户的信息,而Session的ID却保存在客户端的Cookie中,这样一来,客户端和服务器端在每次请求/响应过程中就能确保不会错位了。

每一个客户端都会得到一个唯一的SessionID,在服务器端有一个与之对应的Session对象。Session对象有其特定的生命周期,它开始于客户端的第一次访问,结束于以下几种情况:

·客户端关闭浏览器。

·Session过期。

·服务器端调用了Session对象的invalidate( )方法。

Session对象实现javax.Servlet.http.HttpSession接口,提供的方法见表3-11。

表3-11 Session对象的常用方法

用法举例(见例程3-7)。

例程3-7 session.jsp

session.jsp运行效果如图3-7所示。

图3-7 session.jsp运行效果

本实例的完整源代码请参考配套光盘的“源代码”部分。

3.3.7 application对象

application对象是应用级别的,同一个应用中的所有用户将共享此对象。因此,我们可以利用application对象来存取一些环境信息。application 对象实现javax.servlet. ServletContext接口,提供的方法见表3-12。

表3-12 application对象的常用方法

用法举例(见例程3-8)

例程3-8 application.jsp

application.jsp运行效果如图3-8所示。

图3-8 application.jsp运行效果

本实例的完整源代码请参考配套光盘的“源代码”部分。

3.3.8 pageContext对象

pageContext对象用于管理JSP中特殊可见部分已经命名对象的访问。在指定范围的情况下,pageContext对象提供存取哪些隐含对象属性的方法。

pageContext对象为我们提供了 4 个范围常量。

·PAGE_SCOPE 代表Page范围。

·REQUEST_SCOPE代表Request范围。

·SESSION_SCOPE 代表Session 范围。

·APPLICATION_SCOPE 代表Application 范围。

pageContext对象中常用的方法见表3-13。

表3-13 pageContext对象的常用方法

用法举例(见例程3-9)。

例程3-9 pageContext.jsp

pageContext.jsp运行效果如图3-9所示。

图3-9 pageContext.jsp运行效果

本实例的完整源代码请参考配套光盘的“源代码”部分。

3.3.9 exception对象

当我们在JSP中做了<%@ page isErrorPage='true' %>的设定后,就可以使用exception对象了,exception对象针对网页产生的错误进行异常处理。exception对象中常用的方法见表3-14。

表3-14 exception对象的常用方法

用法举例(见例程3-10 和例程3-11)。

例程3-10 throw.jsp

例程3-11 exception.jsp

throw.jsp运行效果如图3-10所示。

图3-10 throw.jsp运行效果

本实例的完整源代码请参考配套光盘的“源代码”部分。 HsfuL60xbAjGvMgOpeXQZwFYFFrwfPBuaAXs7M/pMX7nuCZhxgEUORa8ZUIqmd+D

点击中间区域
呼出菜单
上一章
目录
下一章
×