九大内置对象的简介
对象名 | 所属类 | 简介 |
---|---|---|
request | HttpServletRequest | 客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。 |
response | HttpServletResponse | response对象包含了响应客户请求的有关信息 |
session | HttpSession | session对象指的是客户端与服务器的一次会话,从客户端连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止。 |
out | JspWriter | 向客户端输出内容常用的对象 |
application | ServletContext | application对象实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。服务器的启动和关闭决定了application对象的生命。 |
page | java.lang.Object | page对象就是指向当前JSP页面本身,有点象类中的this指针 |
exception | java.lang.Throwable | exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象。如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译。 |
pageContext | javax.servlet.jsp.PageContext | pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,也就是说他可以访问到本页所在的SESSION,也可以取本页面所在的application的某一属性值,他相当于页面中所有功能的集大成者 |
config | javax.servlet.ServletConfig | config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数(通过属性名和属性值构成)以及服务器的有关信息(通过传递一个ServletContext对象) |
内置对象的常用方法:
一:request 对象
方法名 | 方法说明 |
---|---|
object getAttribute(String name) | 返回指定属性的属性值 |
Enumeration getAttributeNames() | 返回所有可用属性名的枚举 |
String getCharacterEncoding() | 返回字符编码方式 |
int getContentLength() | 返回请求体的长度(以字节数) |
String getContentType() | 得到请求体的MIME类型 |
ServletInputStream getInputStream() | 得到请求体中一行的二进制流 |
String getParameter(String name) | 返回name指定参数的参数值 |
String getProtocol() | 返回请求用的协议类型及版本号 |
String getScheme() | 返回请求用的计划名,如:http.https及ftp等 |
String getServerName() | 返回接受请求的服务器主机名 |
int getServerPort() | 返回服务器接受此请求所用的端口号 |
BufferedReader getReader() | 返回解码过了的请求体 |
String getRemoteAddr() | 返回发送此请求的客户端IP地址 |
String getRemoteHost() | 返回发送此请求的客户端主机名 |
void setAttribute(String key,Object obj) | 设置属性的属性值 |
StringgetRealPath(String path) | 返回一虚拟路径的真实路径 |
String request.getContextPath() | 返回上下文路径 |
二:response 对象
方法名 | 方法说明 |
---|---|
String getCharacterEncoding() | 返回响应用的是何种字符编码 |
ServletOutputStream getOutputStream() | 返回响应的一个二进制输出流 |
PrintWriter getWriter() | 返回可以向客户端输出字符的一个对象 |
void setContentLength(int len) | 设置响应头长度 |
void setContentType(String type) | 设置响应的MIME类型 |
sendRedirect(java.lang.String location) | 重新定向客户端的请求 |
三:session 对象
方法名 | 方法说明 |
---|---|
long getCreationTime() | 返回SESSION创建时间 |
public String getId() | 返回SESSION创建时JSP引擎为它设的唯一ID号 |
long getLastAccessedTime() | 返回此SESSION里客户端最近一次请求时间 |
int getMaxInactiveInterval() | 返回两次请求间隔多长时间此SESSION被取消(ms) |
String[] getValueNames() | 返回一个包含此SESSION中所有可用属性的数组 |
void invalidate() | 取消SESSION,使SESSION不可用 |
boolean isNew() | 返回服务器创建的一个SESSION,客户端是否已经加入 |
void removeValue(String name) | 删除SESSION中指定的属性 |
void setMaxInactiveInterval() | 设置两次请求间隔多长时间此SESSION被取消(ms) |
四:out 对象
方法名 | 方法说明 |
---|---|
void clear() | 清除缓冲区的内容 |
void clearBuffer() | 清除缓冲区的当前内容 |
void flush() | 清空流 |
int getBufferSize() | 返回缓冲区以字节数的大小,如不设缓冲区则为0 |
int getRemaining() | 设返回缓冲区还剩余多少可用 |
boolean isAutoFlush() | 返回缓冲区满时,是自动清空还是抛出异常 |
void close() | 关闭输出流 |
五:application 对象
方法名 | 方法说明 |
---|---|
Object getAttribute(String name) | 返回给定名的属性值 |
Enumeration getAttributeNames() | 返回所有可用属性名的枚举 |
void setAttribute(String name,Object obj) | 设定属性的属性值 |
void removeAttribute(String name) | 删除一属性及其属性值 |
String getServerInfo() | 返回JSP(SERVLET)引擎名及版本号 |
String getRealPath(String path) | 返回一虚拟路径的真实路径 |
ServletContext getContext(String uripath) | 返回指定WebApplication的application对象 |
int getMajorVersion() | 返回服务器支持的Servlet API的最大版本号 |
int getMinorVersion() | 返回服务器支持的Servlet API的最小版本号 |
String getMimeType(String file) | 返回指定文件的MIME类型 |
URL getResource(String path) | 返回指定资源(文件及目录)的URL路径 |
InputStream getResourceAsStream(String path) | 返回指定资源的输入流 |
RequestDispatcher getRequestDispatcher(String uripath) | 返回指定资源的RequestDispatcher对象 |
Servlet getServlet(String name) | 返回指定名的Servlet |
Enumeration getServlets() | 返回所有Servlet的枚举 |
Enumeration getServletNames() | 返回所有Servlet名的枚举 |
void log(String msg) | 把指定消息写入Servlet的日志文件 |
void log(Exception exception,String msg) | 把指定异常的栈轨迹及错误消息写入Servlet的日志文件 |
void log(String msg,Throwable throwable) | 把栈轨迹及给出的Throwable异常的说明信息 写入Servlet的日志文件 |
六:page 对象
方法名 | 方法说明 |
---|---|
class getClass | 返回此Object的类 |
int hashCode() | 返回此Object的hash码 |
boolean equals(Object obj) | 判断此Object是否与指定的Object对象相等 |
void copy(Object obj) | 把此Object拷贝到指定的Object对象中 |
Object clone() | 克隆此Object对象 |
String toString() | 把此Object对象转换成String类的对象 |
void notify() | 唤醒一个等待的线程 |
void notifyAll() | 唤醒所有等待的线程 |
void wait(int timeout) | 使一个线程处于等待直到timeout结束或被唤醒 |
void wait() | 使一个线程处于等待直到被唤醒 |
void enterMonitor() | 对Object加锁 |
void exitMonitor() | 对Object开锁 |
七:exception 对象
方法名 | 方法说明 |
---|---|
String getMessage() | 返回描述异常的消息 |
String toString() | 返回关于异常的简短描述消息 |
void printStackTrace() | 显示异常及其栈轨迹 |
Throwable FillInStackTrace() | 重写异常的执行栈轨迹 |
八:pageContext 对象
方法名 | 方法说明 |
---|---|
JspWriter getOut() | 返回当前客户端响应被使用的JspWriter流(out) |
HttpSession getSession() | 返回当前页中的HttpSession对象(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(String name,Object attribute) | 设置属性及属性值 |
void setAttribute(String name,Object obj,int scope) | 在指定范围内设置属性及属性值 |
public Object getAttribute(String name) | 取属性的值 |
Object getAttribute(String name,int scope) | 在指定范围内取属性的值 |
public Object findAttribute(String name) | 寻找一属性,返回其属性值或NULL |
void removeAttribute(String name) | 删除某属性 |
void removeAttribute(String name,int scope) | 在指定范围删除某属性 |
int getAttributeScope(String name) | 返回某属性的作用范围 |
Enumeration getAttributeNamesInScope(int scope) | 返回指定范围内可用的属性名枚举 |
void release() | 释放pageContext所占用的资源 |
void forward(String relativeUrlPath) | 使当前页面重导到另一页面 |
void include(String relativeUrlPath) | 在当前位置包含另一文件 |
九:config 对象
方法名 | 方法说明 |
---|---|
ServletContext getServletContext() | 返回含有服务器相关信息的ServletContext对象 |
String getInitParameter(String name) | 返回初始化参数的值 |
Enumeration getInitParameterNames() | 返回Servlet初始化所需所有参数的枚举 |