1. 程式人生 > >JSP 的九大內建物件

JSP 的九大內建物件

內建物件特點:
1. 由JSP規範提供,不用編寫者例項化。
2. 通過Web容器實現和管理
3. 所有JSP頁面均可使用
4. 只有在指令碼元素的表示式或程式碼段中才可使用(<%=使用內建物件%>或<%使用內建物件%>)
常用內建物件:
1. 輸出輸入物件:request物件、response物件、out物件
2. 通訊控制物件:pageContext物件、session物件、application物件
3. Servlet物件:page物件、config物件
4. 錯誤處理物件:exception物件

物件常用方法說明:
1.out物件(資料流 javax.servlet.jsp.jspWriter)
方法名
說明
print或println
輸出資料
newLine
輸出換行字元
flush
輸出緩衝區資料
close
關閉輸出流
clear
清除緩衝區中資料,但不輸出到客戶端
clearBuffer
清除緩衝區中資料,輸出到客戶端
getBufferSize
獲得緩衝區大小
getRemaining
獲得緩衝區中沒有被佔用的空間
isAutoFlush
是否為自動輸出
2.request物件(請求資訊 javax.servlet.http.HttpServletrequest)
方法名
說明
isUserInRole
判斷認證後的使用者是否屬於某一成員組
getAttribute
獲取指定屬性的值,如該屬性值不存在返回Null
getAttributeNames
獲取所有屬性名的集合
getCookies
獲取所有Cookie物件
getCharacterEncoding
獲取請求的字元編碼方式
getContentLength
返回請求正文的長度,如不確定返回-1
getHeader
獲取指定名字報頭值
getHeaders
獲取指定名字報頭的所有值,一個列舉
getHeaderNames
獲取所有報頭的名字,一個列舉
getInputStream
返回請求輸入流,獲取請求中的資料
getMethod
獲取客戶端向伺服器端傳送資料的方法
getParameter
獲取指定名字引數值
getParameterNames
獲取所有引數的名字,一個列舉
getParameterValues
獲取指定名字引數的所有值
getProtocol
獲取客戶端向伺服器端傳送資料的協議名稱
getQueryString
獲取以get方法向伺服器傳送的查詢字串
getRequestURI
獲取發出請求字串的客戶端地址
getRemoteAddr
獲取客戶端的IP地址
getRemoteHost
獲取客戶端的名字
getSession
獲取和請求相關的會話
getServerName
獲取伺服器的名字
getServerPath
獲取客戶端請求檔案的路徑
getServerPort
獲取伺服器的埠號
removeAttribute
刪除請求中的一個屬性
setAttribute
設定指定名字引數值

3.response物件(響應 javax.servlet.http.HttpServletResponse)
方法名
說明
addCookie
新增一個Cookie物件
addHeader
新增Http檔案指定名字頭資訊
containsHeader
判斷指定名字Http檔案頭資訊是否存在
encodeURL
使用sessionid封裝URL
flushBuffer
強制把當前緩衝區內容傳送到客戶端
getBufferSize
返回緩衝區大小
getOutputStream
返回到客戶端的輸出流物件
sendError
向客戶端傳送錯誤資訊
sendRedirect
把響應傳送到另一個位置進行處理
setContentType
設定響應的MIME型別
setHeader
設定指定名字的Http檔案頭資訊
4.session物件(會話 javax.servlet.http.HttpSession)
方法名
說明
getAttribute
獲取指定名字的屬性
getAttributeNames
獲取session中全部屬性名字,一個列舉
getCreationTime
返回session的建立時間
getId
獲取會話識別符號
getLastAccessedTime
返回最後傳送請求的時間
getMaxInactiveInterval
返回session物件的生存時間單位千分之一秒
invalidate
銷燬session物件
isNew
每個請求是否會產生新的session物件
removeAttribute
刪除指定名字的屬性
setAttribute
設定指定名字的屬性值
5.pageContext物件(頁面上下文 javax.servlet.jsp.PageContext)
方法名
說明
forward
重定向到另一頁面或Servlet元件
getAttribute
獲取某範圍中指定名字的屬性值
findAttribute
按範圍搜尋指定名字的屬性
removeAttribute
刪除某範圍中指定名字的屬性
setAttribute
設定某範圍中指定名字的屬性值
getException
返回當前異常物件
getRequest
返回當前請求物件
getResponse
返回當前響應物件
getServletConfig
返回當前頁面的ServletConfig物件
getServletContext
返回所有頁面共享的ServletContext物件
getSession
返回當前頁面的會話物件

6.application物件(應用程式 javax.servlet.ServletContext)
方法名
說明
getAttribute
獲取應用物件中指定名字的屬性值
getAttributeNames
獲取應用物件中所有屬性的名字,一個列舉
getInitParameter
返回應用物件中指定名字的初始引數值
getServletInfo
返回Servlet編譯器中當前版本資訊
setAttribute
設定應用物件中指定名字的屬性值
7.config物件(Servlet的配置資訊 javax.servlet.ServletConfig)
方法名
說明
getServletContext
返回所執行的Servlet的環境物件
getServletName
返回所執行的Servlet的名字
getInitParameter
返回指定名字的初始引數值
getInitParameterNames
返回該JSP中所有的初始引數名,一個列舉
8.page物件(當前JSP的例項,java.lang.object)
它代表JSP被編譯成Servlet,可以使用它來呼叫Servlet類中所定義的方法
9.exception物件(執行時的異常,java.lang.Throwable)
被呼叫的錯誤頁面的結果,只有在錯誤頁面中才可使用,
即在頁面指令中設定:<%@page isErrorPage=“true”%>

Request(Javax.servlet.ServletRequest)它包含了有關瀏覽器請求的資訊.通過該物件可以獲得請求中的頭資訊、Cookie和請求引數。
Response(Javax.servlet.ServletResponse)作為JSP頁面處理結果返回給使用者的響應儲存在該物件中。並提供了設定響應內容、響應頭以及重定向的方法(如cookies,頭資訊等)
Out(Javax.servlet.jsp.JspWriter)用於將內容寫入JSP頁面例項的輸出流中,提供了幾個方法使你能用於向瀏覽器回送輸出結果。
pageContext(Javax.servlet.jsp.PageContext)描述了當前JSP頁面的執行環境。可以返回JSP頁面的其他隱式物件及其屬性的訪問,另外,它還實現將控制權從當前頁面傳輸至其他頁面的方法。
Session(javax.servlet.http.HttpSession)會話物件儲存有關此會話的資訊,也可以將屬性賦給一個會話,每個屬性都有名稱和值。會話物件主要用於儲存和檢索屬性值。
Application(javax.servle.ServletContext)儲存了執行JSP頁面的servlet以及在同一應用程式中的任何Web元件的上下文資訊。
Page(Java.lang.Object)表示當前JSP頁面的servlet例項
Config(javax.servlet.ServletConfig)該物件用於存取servlet例項的初始化引數。
Exception(Javax.lang.Throwable)在某個頁面丟擲異常時,將轉發至JSP錯誤頁面,提供此物件是為了在JSP中處理錯誤。只有在錯誤頁面中才可使用<%@page isErrorPage=“true”%>

Jsp內建物件
功能
主要方法
out
向客戶端輸出資料
print() println() flush() clear() isAutoFlush() getBufferSize() close() …………
request
向客戶端請求資料
getAttributeNames() getCookies() getParameter() getParameterValues() setAttribute() getServletPath() …………..
response
封裝了jsp產生的響應,然後被髮送到客戶端以響應客戶的請求
addCookie() sendRedirect() setContentType()
flushBuffer() getBufferSize() getOutputStream()
sendError() containsHeader()……………
application

config
表示Servlet的配置,當一個Servlet初始化時,容器把某些資訊通過此物件傳遞給這個Servlet
getServletContext() getServletName() getInitParameter() getInitParameterNames()……………
page
Jsp實現類的例項,它是jsp本身,通過這個可以對它進行訪問
flush()………
pagecontext
為JSP頁面包裝頁面的上下文。管理對屬於JSP中特殊可見部分中己經命名物件的該問
forward() getAttribute() getException() getRequest() getResponse() getServletConfig()
getSession() getServletContext() setAttribute()
removeAttribute() findAttribute() ……………
session
用來儲存每個使用者的資訊,以便跟蹤每個使用者的操作狀態
getAttribute() getId() getAttributeNames() getCreateTime() getMaxInactiveInterval()
invalidate() isNew()
exception
反映執行的異常
getMessage()…………