1. 程式人生 > >JSP 九大內置對象詳解

JSP 九大內置對象詳解

端口 content eth tac 不存在 時間 active 成員 代碼段

內置對象特點:

  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)

方法名

說明

printprintln

輸出數據

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

存儲了運行JSP頁面的servlet以及在同一應用程序中的任何Web組件的上下文信息

getAttribute() setAttribute() removeAttribute()

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()…………

JSP 九大內置對象詳解