天天看點

9個JSP内置對象

轉自 : http://bye.javaeye.com/blog/202640

JSP内置對象(9個常用的内置對象) 

1.request對象

用戶端的請求資訊被封裝在request對象中,通過它才能了解到客戶的需求,然後做出響應。它是HttpServletRequest類的執行個體。

序号 方 法 說 明

1 object getAttribute(String name) 傳回指定屬性的屬性值

2 Enumeration getAttributeNames() 傳回所有可用屬性名的枚舉

3 String getCharacterEncoding() 傳回字元編碼方式

4 int getContentLength() 傳回請求體的長度(以位元組數)

5 String getContentType() 得到請求體的MIME類型

6 ServletInputStream getInputStream() 得到請求體中一行的二進制流

7 String getParameter(String name) 傳回name指定參數的參數值

8 Enumeration getParameterNames() 傳回可用參數名的枚舉

9 String[] getParameterValues(String name) 傳回包含參數name的所有值的數組

10 String getProtocol() 傳回請求用的協定類型及版本号

11 String getScheme() 傳回請求用的計劃名,如:http.https及ftp等

12 String getServerName() 傳回接受請求的伺服器主機名

13 int getServerPort() 傳回伺服器接受此請求所用的端口号

14 BufferedReader getReader() 傳回解碼過了的請求體

15 String getRemoteAddr() 傳回發送此請求的用戶端IP位址

16 String getRemoteHost() 傳回發送此請求的用戶端主機名

17 void setAttribute(String key,Object obj) 設定屬性的屬性值

18 String getRealPath(String path) 傳回一虛拟路徑的真實路徑 

2.response對象

response對象包含了響應客戶請求的有關資訊,但在JSP中很少直接用到它。它是HttpServletResponse類的執行個體。

1 String getCharacterEncoding() 傳回響應用的是何種字元編碼

2 ServletOutputStream getOutputStream() 傳回響應的一個二進制輸出流

3 PrintWriter getWriter() 傳回可以向用戶端輸出字元的一個對象

4 void setContentLength(int len) 設定響應頭長度

5 void setContentType(String type) 設定響應的MIME類型

6 sendRedirect(java.lang.String location) 重新定向用戶端的請求

 

3.session對象

session對象指的是用戶端與伺服器的一次會話,從客戶連到伺服器的一個WebApplication開始,直到用戶端與伺服器斷開連接配接為止。它是HttpSession類的執行個體.

1 long getCreationTime() 傳回SESSION建立時間

2 public String getId() 傳回SESSION建立時JSP引擎為它設的惟一ID号

3 long getLastAccessedTime() 傳回此SESSION裡用戶端最近一次請求時間

4 int getMaxInactiveInterval() 傳回兩次請求間隔多長時間此SESSION被取消(ms)

5 String[] getValueNames() 傳回一個包含此SESSION中所有可用屬性的數組

6 void invalidate() 取消SESSION,使SESSION不可用

7 boolean isNew() 傳回伺服器建立的一個SESSION,用戶端是否已經加入

8 void removeValue(String name) 删除SESSION中指定的屬性

9 void setMaxInactiveInterval() 設定兩次請求間隔多長時間此SESSION被取消(ms) 

4.out對象

out對象是JspWriter類的執行個體,是向用戶端輸出内容常用的對象

1 void clear() 清除緩沖區的内容

2 void clearBuffer() 清除緩沖區的目前内容

3 void flush() 清空流

4 int getBufferSize() 傳回緩沖區以位元組數的大小,如不設緩沖區則為0

5 int getRemaining() 傳回緩沖區還剩餘多少可用

6 boolean isAutoFlush() 傳回緩沖區滿時,是自動清空還是抛出異常

7 void close() 關閉輸出流

5.page對象

page對象就是指向目前JSP頁面本身,有點象類中的this指針,它是java.lang.Object類的執行個體

1 class getClass 傳回此Object的類

2 int hashCode() 傳回此Object的hash碼

3 boolean equals(Object obj) 判斷此Object是否與指定的Object對象相等

4 void copy(Object obj) 把此Object拷貝到指定的Object對象中

5 Object clone() 克隆此Object對象

6 String toString() 把此Object對象轉換成String類的對象

7 void notify() 喚醒一個等待的線程

8 void notifyAll() 喚醒所有等待的線程

9 void wait(int timeout) 使一個線程處于等待直到timeout結束或被喚醒

10 void wait() 使一個線程處于等待直到被喚醒

11 void enterMonitor() 對Object加鎖

12 void exitMonitor() 對Object開鎖 

6.application對象

application對象實作了使用者間資料的共享,可存放全局變量。它開始于伺服器的啟動,直到伺服器的關閉,在此期間,此對象将一直存在;這樣在使用者的前後連接配接或不同使用者之間的連接配接中,可以對此對象的同一屬性進行操作;在任何地方對此對象屬性的操作,都将影響到其他使用者對此的通路。伺服器的啟動和關閉決定了application對象的生命。它是ServletContext類的執行個體。

1 Object getAttribute(String name) 傳回給定名的屬性值

3 void setAttribute(String name,Object obj) 設定屬性的屬性值

4 void removeAttribute(String name) 删除一屬性及其屬性值

5 String getServerInfo() 傳回JSP(SERVLET)引擎名及版本号

6 String getRealPath(String path) 傳回一虛拟路徑的真實路徑

7 ServletContext getContext(String uripath) 傳回指定WebApplication的application對象

8 int getMajorVersion() 傳回伺服器支援的Servlet API的最大版本号

9 int getMinorVersion() 傳回伺服器支援的Servlet API的最大版本号

10 String getMimeType(String file) 傳回指定檔案的MIME類型

11 URL getResource(String path) 傳回指定資源(檔案及目錄)的URL路徑

12 InputStream getResourceAsStream(String path) 傳回指定資源的輸入流

13 RequestDispatcher getRequestDispatcher(String uripath) 傳回指定資源的RequestDispatcher對象

14 Servlet getServlet(String name) 傳回指定名的Servlet

15 Enumeration getServlets() 傳回所有Servlet的枚舉

16 Enumeration getServletNames() 傳回所有Servlet名的枚舉

17 void log(String msg) 把指定消息寫入Servlet的日志檔案

18 void log(Exception exception,String msg) 把指定異常的棧軌迹及錯誤消息寫入Servlet的日志檔案

19 void log(String msg,Throwable throwable) 把棧軌迹及給出的Throwable異常的說明資訊 寫入Servlet的日志檔案 

7.exception對象

exception對象是一個例外對象,當一個頁面在運作過程中發生了例外,就産生這個對象。如果一個JSP頁面要應用此對象,就必須把isErrorPage設為true,否則無法編譯。他實際上是java.lang.Throwable的對象

1 String getMessage() 傳回描述異常的消息

2 String toString() 傳回關于異常的簡短描述消息

3 void printStackTrace() 顯示異常及其棧軌迹

4 Throwable FillInStackTrace() 重寫異常的執行棧軌迹 

8.pageContext對象

pageContext對象提供了對JSP頁面内所有的對象及名字空間的通路,也就是說他可以通路到本頁所在的SESSION,也可以取本頁面所在的application的某一屬性值,他相當于頁面中所有功能的集大成者,它的本類名也叫pageContext。

1 JspWriter getOut() 傳回目前用戶端響應被使用的JspWriter流(out)

2 HttpSession getSession() 傳回目前頁中的HttpSession對象(session)

3 Object getPage() 傳回目前頁的Object對象(page)

4 ServletRequest getRequest() 傳回目前頁的ServletRequest對象(request)

5 ServletResponse getResponse() 傳回目前頁的ServletResponse對象(response)

6 Exception getException() 傳回目前頁的Exception對象(exception)

7 ServletConfig getServletConfig() 傳回目前頁的ServletConfig對象(config)

8 ServletContext getServletContext() 傳回目前頁的ServletContext對象(application)

9 void setAttribute(String name,Object attribute) 設定屬性及屬性值

10 void setAttribute(String name,Object obj,int scope) 在指定範圍内設定屬性及屬性值

11 public Object getAttribute(String name) 取屬性的值

12 Object getAttribute(String name,int scope) 在指定範圍内取屬性的值

13 public Object findAttribute(String name) 尋找一屬性,傳回起屬性值或NULL

14 void removeAttribute(String name) 删除某屬性

15 void removeAttribute(String name,int scope) 在指定範圍删除某屬性

16 int getAttributeScope(String name) 傳回某屬性的作用範圍

17 Enumeration getAttributeNamesInScope(int scope) 傳回指定範圍内可用的屬性名枚舉

18 void release() 釋放pageContext所占用的資源

19 void forward(String relativeUrlPath) 使目前頁面重導到另一頁面

20 void include(String relativeUrlPath) 在目前位置包含另一檔案 

9.config對象

config對象是在一個Servlet初始化時,JSP引擎向它傳遞資訊用的,此資訊包括Servlet初始化時所要用到的參數(通過屬性名和屬性值構成)以及伺服器的有關資訊(通過傳遞一個ServletContext對象)

1 ServletContext getServletContext() 傳回含有伺服器相關資訊的ServletContext對象

2 String getInitParameter(String name) 傳回初始化參數的值

3 Enumeration getInitParameterNames() 傳回Servlet初始化所需所有參數的枚舉