JSP 隐藏对象

【摘要】 

   隐藏对象用在jsp表达式和脚本中,不能直接用在jsp声明中,因为这些隐藏对象是容器在jspservice方法中定义的,在这个方法中定义的变量不能在jsp声明中使用。可以通过参数方法将隐藏对象传递到jsp声明自定义的方法中,而且自定义的方法必须要抛异常。

域范围从小到大: pageContext request session application 

代表 HttpServletResponse 的: response 
代表 ServletConfig 的: config 
代表 JspWriter 的: out 
代表当前 jsp 页面生成的 Servlet 的实例的: page   (Object page = this) 
带页面指定 isErrorPage=true 时的: Exception 

============================================JSP内置9个隐藏对象============================================

1.out输出流对象

隐藏对象out是javax.servlet.jsp.JspWriter类的实例服务器向客户端输出的字符类内容可以通过out对象输出。

 

2.request 请求对象

隐藏对象request是javax.servlet.ServletRequest类的实例代表客户端的请求request包含客户端的信息以及请求的信息,如请求哪个文件,附带的地址栏参数等每次客户端请求都会产生一个request实例

 

3.response 响应对象

隐藏对象response是javax.servlet.ServletResponse类的实例,代表服务器端的响应服务器端的任何输出都是通过response对象发送到客户端浏览器。每次服务器端都会产生一个response实例。

 

4.config 配置对象

隐藏对象config是javax.servlet.ServletConfig类的实例ServletConfig封装了配置在web.xml中初始化JSP的参数。JSP中通过config获取这些参数。每个JSP文件都有一个config对象。

 

5.session 会话对象

隐藏对象session是javax.servlet.http.HttpSession类的实例session与cookie记录客户访问信息两种机制session用于服务器端保存用户信息cookie用于客户端保存用户信息。

Servlet通过request.getSession()获取session对象而在JSP中可以直接使用。如果JSP中配置了<%@ page session="false" %>,则隐藏对象session不可用。每个用户对应一个session对象。

 

6.application 应用程序对象

隐藏对象application是javax.servlet.ServletContext类的对象application封装了JSP所在的Web应用程序的信息例如web.xml中配置的全局的初始化信息。Servlet中application对象通过ServletConfig.getServletContext()来获取整个Web应用程序对应一个application对象

 

7.page 页面对象

隐藏对象page为javax.servlet.jsp.HttpJspPage类的实例page对象代表当前JSP页面是当前JSP编译后的Servlet类的对象。page相当于普通java类中的关键字this。

 

8.pageContext 页面上下文对象

隐藏对象pageContext为javax.servlet.jsp.PageContext类的实例。pageContext对象代表当前JSP页面编译后的内容。通过pageContext能够获取到JSP中的资源。

 

9.exception 异常对象

隐藏对象exception为java.lang.Exception类的对象。exception封装了JSP中抛出的异常信息。要使用exception对象,需要设置<%@ page isErrorPage="true" %>。隐藏对象exception通常被用来处理错误页面。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。