内建对象的介绍
JSP为简化页面的开发提供了一些内部对象。这些内部对象不需要由JSP的编写者实例化,它们由容器实现和管理,在所有的JSP页面中都能使用内部对象。所有的隐含对象只有对Scriptlets或表达式有用,在JSP声明中不可用。JSP里有以下的内部对象:
- request对象
- response对象
- pageContext对象
- session对象
- application对象
- out对象
- config对象
- page对象
- exception对象
对象 | 类型 | 描述 | 作用域 |
request |
javax.servlet.ServletRequest 的子类 |
客户端的请求,通常是HttpServletRequest的子类,如果 客户的请求中有参数,则该对象就有一个参数列表 | request(用户请求期) |
response |
javax.servlet.ServletResponse 的子类 | JSP页面的响应,是HttpServletResponse的子类。页面的属性和需要通过标准API访问的相关对象(本质上是构成服务器环境让JSP运行的一些对象),以便JSP引擎编译页面。但是,不同Servlet对这些属性和对象的实现方式不同 | page(页面执行期) |
pageContext | javax.servlet.jsp.PageContext |
解决方案是JSP引擎编译用factory类返回的服务器的PageContext类的实现方法。PageContext类和request、response对象及page指令的一些属性 (errorpage、session、buffer、autoflush)同时被初始化,同时提供request请求的相关的对象 | page(页面执行期) |
session | javax.servlet.http.HttpSession | HTTPsession是与request联合的对象 | session(会话期) |
application | javax.servlet.ServletContext | servelt的环境通过调用getServletConfig().getContext方法获得 | application(整个Web应用程序运行期) |
out | javax.servlet.jsp.JspWriter | 代表输出流对象 | page(页面执行期) |
config | javax.servlet.ServletConfig | 页面的ServletConfig对象 | page(页面执行期) |
page | java.lang.Object | 指向页面自身的方式(在Java代码中多以this代替) | page(页面执行期) |
exception java.lang.Throwable 没有被Throwable捕获的错误。传向了errorpage的URI