page对象代表JSP本身,更准确地说它代表JSP被转译后的Servlet,它可以调用Servlet类所定义的方法。
二、config 对象
config 对象里存放着一些Servlet 初始的数据结构。
config 对象实现于javax.servlet.ServletConfig 接口,它共有下列四种方法:
public String getInitParameter(name) | 返回String类型的初始化参数 |
public java.util.Enumeration getInitParameterNames( ) | 返回所有初始化参数的名字 |
public ServletContext getServletContext( ) | 获得当前服务器小程序或JSP页面的服务器小程序环境 |
public Sring getServletName( ) | 获得当前服务器小程序或JSP页面的名称 |
三、request 对象
request 对象包含所有请求的信息,如:请求的来源、标头、cookies和请求相关的参数值等等。
request 对象实现javax.servlet.http.HttpServletRequest接口的,所提供的方法可以将它分为四大类:
1.储存和取得属性方法;
void setAttribute(String name, Object value) | 设定name属性的值为value |
Enumeration getAttributeNamesInScope(int scope) | 取得所有scope 范围的属性 |
Object getAttribute(String name) | 取得name 属性的值 |
void removeAttribute(String name) | 移除name 属性的值 |
2.取得请求参数的方法
StringgetHeader(Stringname) | 取得name的标头 |
EnumerationgetHeaderNames() | 取得所有的标头名称 |
EnumerationgetHeaders(Stringname) | 取得所有name的标头 |
intgetIntHeader(Stringname) | 取得整数类型name的标头 |
longgetDateHeader(Stringname) | 取得日期类型name的标头 |
Cookie[]getCookies() | 取得与请求有关的cookies |
3.能够取得请求HTTP 标头的方法
StringgetContextPath() | 取得Context路径(即站台名称) |
StringgetMethod() | 取得HTTP的方法(GET、POST) |
StringgetProtocol() | 取得使用的协议(HTTP/1.1、HTTP/1.0) |
StringgetQueryString() | 取得请求的参数字符串,不过,HTTP的方法必须为GET |
StringgetRequestedSessionId() | 取得用户端的SessionID |
StringgetRequestURI() | 取得请求的URL,但是不包括请求的参数字符串 |
StringgetRemoteAddr() | 取得用户的IP地址 |
StringgetRemoteHost() | 取得用户的主机名称 |
intgetRemotePort() | 取得用户的主机端口 |
StringgetRemoteUser() | 取得用户的名称 |
voidetCharacterEncoding(Stringencoding) | 设定编码格式,用来解决窗体传递中文的问题 |
四、response 对象
response 对象主要将JSP 处理数据后的结果传回到客户端。
response 对象是实现javax.servlet.http.HttpServletResponse 接口。response对象所提供的方法。
1.设定表头的方法
voidaddCookie(Cookiecookie) | 新增cookie |
voidaddDateHeader(Stringname,longdate) | 新增long类型的值到name标头 |
voidaddHeader(Stringname,Stringvalue) | 新增String类型的值到name标头 |
voidaddIntHeader(Stringname,intvalue) | 新增int类型的值到name标头 |
voidsetDateHeader(Stringname,longdate) | 指定long类型的值到name标头 |
voidsetHeader(Stringname,Stringvalue) | 指定String类型的值到name标头 |
voidsetIntHeader(Stringname,intvalue) | 指定int类型的值到name标头 |
2.设定响应状态码的方法
voidsendError(intsc) | 传送状态码(statuscode) |
voidsendError(intsc,Stringmsg) | 传送状态码和错误信息 |
voidsetStatus(intsc) | 设定状态码 |
3.用来URL 重写(rewriting)的方法
StringencodeRedirectURL(Stringurl) | 对使用sendRedirect()方法的URL予以编码 |
五、out 对象
out 对象能把结果输出到网页上。
out主要是用来控制管理输出的缓冲区(buffer)和输出流(output stream)。
voidclear() | 清除输出缓冲区的内容 |
voidclearBuffer() | 清除输出缓冲区的内容 |
voidclose() | 关闭输出流,清除所有的内容 |
intgetBufferSize() | 取得目前缓冲区的大小(KB) |
intgetRemaining() | 取得目前使用后还剩下的缓冲区大小(KB) |
booleanisAutoFlush() | 回传true表示缓冲区满时会自动清除;false表示不会自动清除并且产生异常处理 |
六、session 对象
session对象表示目前个别用户的会话(session)状况。
session对象实现javax.servlet.http.HttpSession接口,HttpSession接口所提供的方法
longgetCreationTime() | 取得session产生的时间,单位是毫秒 |
StringgetId() | 取得session的ID |
longgetLastAccessedTime() | 取得用户最后通过这个session送出请求的时间 |
longgetMaxInactiveInterval() | 取得最大session不活动的时间,若超过这时间,session将会失效 |
voidinvalidate() | 取消session对象,并将对象存放的内容完全抛弃 |
booleanisNew() | 判断session是否为"新"的 |
voidsetMaxInactiveInterval(intinterval) | 设定最大session不活动的时间,若超过这时间,session将会失效 |
七、application对象
application对象最常被使用在存取环境的信息。
因为环境的信息通常都储存在ServletContext中,所以常利用application对象来存取ServletContext中的信息。
application 对象实现javax.servlet.ServletContext 接口,ServletContext接口容器所提供的方法
intgetMajorVersion() | 取得Container主要的ServletAPI版本 |
intgetMinorVersion() | 取得Container次要的ServletAPI版本 |
StringgetServerInfo() | 取得Container的名称和版本 |
StringgetMimeType(Stringfile) | 取得指定文件的MIME类型 |
ServletContextgetContext(Stringuripath) | 取得指定LocalURL的Applicationcontext |
StringgetRealPath(Stringpath) | 取得本地端path的绝对路径 |
voidlog(Stringmessage) | 将信息写入log文件中 |
voidlog(Stringmessage,Throwablethrowable) | 将stacktrace所产生的异常信息写入log文件中 |
八、pageContext对象
pageContext对象能够存取其他隐含对象。
1.pageContext对象存取其他隐含对象属性的方法,此时需要指定范围的参数。
Object getAttribute(String name, int scope)
Enumeration getAttributeNamesInScope(int scope)
void removeAttribute(String name, int scope)
void setAttribute(String name, Object value, int scope)
范围参数有四个,分别代表四种范围:PAGE_SCOPE、REQUEST_SCOPE、SESSION_SCOPE、APPLICATION_SCOPE
2.PageContext对象取得其他隐含对象的方法
ExceptiongetException() | 回传目前网页的异常,不过此网页要为errorpage, |
JspWritergetOut() | 回传目前网页的输出流,例如:out |
ObjectgetPage() | 回传目前网页的Servlet实体(instance),例如:page |
ServletRequestgetRequest() | 回传目前网页的请求,例如:request |
ServletResponsegetResponse() | 回传目前网页的响应,例如:response |
ServletConfiggetServletConfig() | 回传目前此网页的ServletConfig对象,例如:config |
ServletContextgetServletContext() | 回传目前此网页的执行环境(context),例如:application |
HttpSessiongetSession() | 回传和目前网页有联系的会话(session),例如:session |
3.PageContext对象提供取得属性的方法
ObjectgetAttribute(Stringname,intscope) | 回传name属性,范围为scope的属性对象,回传类型为Object |
EnumerationgetAttributeNamesInScope(intscope) | 回传所有属性范围为scope的属性名称,回传类型为Enumeration |
intgetAttributesScope(Stringname) | 回传属性名称为name的属性范围 |
voidremoveAttribute(Stringname) | 移除属性名称为name的属性对象 |
voidremoveAttribute(Stringname,intscope) | 移除属性名称为name,范围为scope的属性对象 |
voidsetAttribute(Stringname,Objectvalue,intscope) | 指定属性对象的名称为name、值为value、范围为scope |
ObjectfindAttribute(Stringname) | 寻找在所有范围中属性名称为name的属性对象 |
九、exception对象
若要使用exception 对象时,必须在page 指令中设定。<%@ page isErrorPage="true" %>才能使用。
exception提供的三个方法:
getMessage() | |
getLocalizedMessage()、 | |
printStackTrace(newjava.io.PrintWriter(out) |
转自点击打开链接