JSP中一共预先定义了9个这样的对象,分别为:request、response、session、application、out、pagecontext、config、page、exception
1、request对象
客户端的请求信息被封装在request对象中(包括头信息、系统信息、请求方式以及请求参数等)。request对象的作用域为一次请求,通过它才能了解到客户的需求
然后做出响应。它是httpervletRequest类的实例。
- object getAttribute(Stringname) 返回指定属性的属性值
- Enumeration getAttributeNames() 返回所有可用属性名的枚举
- String getCharacterEncoding() 返回字符编码方式
- intget ContentLength() 返回请求体的长度(以字节数)
- String getContentType() 得到请求体的MIME类型
- ServletInputStream getInputStream() 得到请求体中一行的二进制流
- String getParameter(Stringname) 返回name指定参数的参数值
- Enumeration getParameterNames() 返回可用参数名的枚举
- String[] getParameterValues(Stringname) 返回包含参数name的所有值的数组
- String getProtocol() 返回请求用的协议类型及版本号
- String getScheme() 返回请求用的计划名,如:http.http及ftp等
- String getServerName() 返回接受请求的服务器主机名
- intget ServerPort() 返回服务器接受此请求所用的端口号
- String getRemoteAddr() 返回发送此请求的客户端IP地址
- String getRemoteHost() 返回发送此请求的客户端主机名
- void setAttribute(Stringkey,Objectobj) 设置属性的属性值
- String getRealPath(Stringpath) 返回一虚拟路径的真实路径
2、response对象
response 代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。response对象也具有作用域,它只在JSP页面内有效,它是httpervletResponse类的实例。
具有动态响应contentType属性,当一个用户访问一个JSP页面时,如果该页面用page指令设置页面的contentType属性是text/html,那么JSP引擎将按照这个属性值做出反应。
在某些情况下,当响应客户时,需要将客户重新引导至另一个页面,可以使用Response的sendRedirect(URL)方法实现客户的重定向。
- String getCharacterEncoding() 返回响应用的是何种字符编码
- Servlet OutputStreamgetOutputStream() 返回响应的一个二进制输出流
- PrintWriter getWriter() 返回可以向客户端输出字符的一个对象
- void setContentLength(intlen) 设置响应头长度
- void setContentType(Stringtype) 设置响应的MIME类型
- sendRedirect(java.lang.Stringlocation) 重新定向客户端的请求
3、session对象
在第一个JSP页面被装载时自动创建,完成会话期管理。从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。当一个客户访问一个服务器时,可能会在这个服务器的几个页面之间切换,服务器应当通过某种办法知道这是一个客户,就需要Session对象。
当一个客户首次访问服务器上的一个JSP页面时,JSP引擎产生一个Session对象,同时分配一个String类型的ID号,JSP引擎同时将这换个ID号发送到客户端,存放在Cookie中,这样Session对象,直到客户关闭浏览器后,服务器端该客户的Session对象才取消,并且和客户的会话对应关系消失。当客户重新打开浏览器再连接到该服务器时,服务器为该客户再创建一个新的Session对象。
session 对象是由服务器自动创建的与用户请求相关的对象。服务器为每个用户都生成一个session对象,用于保存该用户的信息,跟踪用户的操作状态。
session对象内部使用Map类来保存数据,因此保存数据的格式为 “Key/value”。 session对象的value可以使复杂的对象类型,而不仅仅局限于字符串类型。
- long getCreationTime() 返回SESSION创建时间
- String getId() 返回SESSION创建时JSP引擎为它设的惟一ID号
- long getLastAccessedTime() 返回此SESSION里客户端最近一次请求时间
- intget MaxInactiveInterval() 返回两次请求间隔多长时间此SESSION被取消(ms)
- String[] getValueNames() 返回一个包含此SESSION中所有可用属性的数组
- void invalidate() 取消SESSION,使SESSION不可用
- boolean isNew() 返回服务器创建的一个SESSION,客户端是否已经加入
- void removeValue(Stringname) 删除SESSION中指定的属性
- void setMaxInactiveInterval() 设置两次请求间隔多长时间此SESSION被取消(ms)
4、out对象
out对象是JspWriter类的实例,out 对象用于在Web浏览器内输出信息,并且管理应用服务器上的输出缓冲区。在使用 out 对象输出数据时,可以对数据缓冲区进行操作,及时清除缓冲区中的残余数据,为其他的输出让出缓冲空间。待数据输出完毕后,要及时关闭输出流。
- void clear() 清除缓冲区的内容
- void clearBuffer() 清除缓冲区的当前内容
- void flush() 清空流
- intget BufferSize() 返回缓冲区以字节数的大小,如不设缓冲区则为0
- intget Remaining() 返回缓冲区还剩余多少可用
- boolean isAutoFlush() 返回缓冲区满时,是自动清空还是抛出异常
- void close() 关闭输出流
5、page对象
page 对象代表JSP本身,只有在JSP页面内才是合法的。 page隐含对象本质上包含当前 Servlet 接口引用的变量,类似于Java编程中的 this 指针。
- class getClass() 返回此Object的类
- int hashCode() 返回此Object的hash码
- boolean equals(Objectobj) 判断此Object是否与指定的Object对象相等
- void copy(Objectobj) 把此Object拷贝到指定的Object对象中
- Object clone() 克隆此Object对象
- String toString() 把此Object对象转换成String类的对象
- void notify() 唤醒一个等待的线程
- void notifyAll() 唤醒所有等待的线程
- void wait(inttimeout) 使一个线程处于等待直到timeout结束或被唤醒
- void wait() 使一个线程处于等待直到被唤醒
- void enterMonitor() 对Object加锁
- void exitMonitor() 对Object开锁
6、application对象
application 对象可将信息保存在服务器中,直到服务器关闭,服务器的存活决定了application对象的生命,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;否则application对象中保存的信息会在整个应用中都有效。与session对象相比,application对象生命周期更长,类似于系统的“全局变量”。在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。是ServletContext类的实例。
- Object getAttribute(Stringname) 返回给定名的属性值
- Enumeration getAttributeNames() 返回所有可用属性名的枚举
- void setAttribute(Stringname,Objectobj) 设定属性的属性值
- void removeAttribute(Stringname) 删除一属性及其属性值
- String getServerInfo() 返回JSP(SERVLET)引擎名及版本号
- String getRealPath(Stringpath) 返回一虚拟路径的真实路径
- ServletContext getContext(Stringuripath) 返回指定WebApplication的application对象
- intget MajorVersion() 返回服务器支持的ServletAPI的最大版本号
- intget MinorVersion() 返回服务器支持的ServletAPI的最大版本号
- String getMimeType(Stringfile) 返回指定文件的MIME类型
- URL getResource(Stringpath) 返回指定资源(文件及目录)的URL路径
- InputStream getResourceAsStream(Stringpath) 返回指定资源的输入流
- RequestDispatcher getRequestDispatcher(Stringuripath) 返回指定资源的RequestDispatcher对象
- Servlet getServlet(Stringname) 返回指定名的Servlet
- Enumeration getServlets() 返回所有Servlet的枚举
- Enumeration getServletNames() 返回所有Servlet名的枚举
- void log(Stringmsg) 把指定消息写入Servlet的日志文件
- void log(Exceptionexception,Stringmsg) 把指定异常的栈轨迹及错误消息写入Servlet的日志文件
- void log(Stringmsg,Throwablethrowable) 把栈轨迹及给出的Throwable异常的说明信息写入Servlet的日志文件
7、exception对象
exception 对象的作用是显示异常信息,只有在包含 isErrorPage=”true” 的页面中才可以被使用,在一般的JSP页面中使用该对象将无法编译JSP文件。excepation对象和Java的所有对象一样,都具有系统提供的继承结构。exception 对象几乎定义了所有异常情况。如果在JSP页面中出现没有捕获到的异常,就会生成 exception 对象,并把 exception 对象传送到在page指令中设定的错误页面中,然后在错误页面中处理相应的 exception 对象。如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译。他实际上是java.lang.Throwable的对象.
- String getMessage() 返回描述异常的消息
- String toString() 返回关于异常的简短描述消息
- void printStackTrace() 显示异常及其栈轨迹
- Throwable FillInStackTrace() 重写异常的执行栈轨迹
8、pageContext对象
pageContext 对象的作用是取得任何范围的参数,通过它可以获取 JSP页面的out、request、reponse、session、application 等对象,他相当于页面中所有功能的集大成者。pageContext对象的创建和初始化都是由容器来完成的,在JSP页面中可以直接使用 pageContext对象,它的本类名也叫pageContext。
- JspWriter getOut() 返回当前客户端响应被使用的JspWriter流(out)
- httpession getSession() 返回当前页中的httpession对象(session)
- Object getPage() 返回当前页的Object对象(page)
- ServletRequest getRequest() 返回当前页的ServletRequest对象(request)
- ServletResponse getResponse() 返回当前页的ServletResponse对象(response)
- Exception getException() 返回当前页的Exception对象(exception)
- ServletConfig getServletConfig() 返回当前页的ServletConfig对象(config)
- ServletContext getServletContext() 返回当前页的ServletContext对象(application)
- void setAttribute(Stringname,Objectattribute) 设置属性及属性值
- void setAttribute(Stringname,Objectobj,intscope) 在指定范围内设置属性及属性值
- Object getAttribute(Stringname) 取属性的值
- Object getAttribute(Stringname,intscope) 在指定范围内取属性的值
- Object findAttribute(Stringname) 寻找一属性,返回起属性值或NULL
- void removeAttribute(Stringname) 删除某属性
- void removeAttribute(Stringname,intscope) 在指定范围删除某属性
- intget AttributeScope(Stringname) 返回某属性的作用范围
- Enumeration getAttributeNamesInScope(intscope) 返回指定范围内可用的属性名枚举
- void release() 释放pageContext所占用的资源
- void forward(StringrelativeUrlPath) 使当前页面重导到另一页面
- void include(StringrelativeUrlPath) 在当前位置包含另一文件
9、config对象
config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,config 对象的主要作用是取得服务器的配置信息。当一个Servlet 初始化时,容器把某些信息通过 config对象传递给这个 Servlet。 开发者可以在web.xml 文件中为应用程序环境中的Servlet程序和JSP页面提供初始化参数。

发表评论
沙发空缺中,还不快抢~