1. 程式人生 > >JSP常用內建物件相關

JSP常用內建物件相關

為了簡化頁面的開發過程,JSP提供了內建物件,他們由容器實現和管理,不需要預先申明,不需要例項化就可以直接使用,主要有九大內建,其中前五比較常用

1,out物件。

out物件被封裝維javax.servlet.jsp.JspWriter介面,表示為客戶開啟輸出流,用來向客戶輸出資料。

主要方法:print():輸出資料到客戶端,close():關閉輸出流,clear()清除緩衝區資料,flush()立即將緩衝區資料輸出到客戶端顯示。等等方法

2,request物件

request物件被封裝維javax.servlet.jsp.HttpServletRequest介面,來自客戶的請求經過Servlet容器處理以後,由Servlet容器處理後,再由request物件進行封裝。

主要方法:getAttribute(String name):返回由name屬性指定的屬性值,如果不存在返回null。getCookie():返回客戶端的cookie物件。等等

3,response物件

response物件被封裝維javax.servlet.jsp.HttpServletResponse介面,該介面封裝了JSP的響應,這個響應被分發到客戶端以響應客戶的請求。和request一樣,由servlet容器生成

作為jspService()方法的一個引數由容器傳遞給jsp頁面。

主要方法:addCookie(Cookie cookie):新增一個cookie物件用來儲存客戶的資訊。其他的沒咋用過

4,session物件

session物件用來儲存每個使用者的資訊,用來跟蹤每個使用者的操作狀態。由於http請求是無狀態協議,所以一個請求響應後連線就關閉了,下一次連線的時候伺服器無法判斷

連線是否屬於同一客戶,解決這一問題的方法就是用session來記錄連線相關的資訊。session物件被封裝為javax.servlet.jsp.HttpSession介面,其中session的相關資訊儲存在客戶端,

session的ID儲存在Cookie中。

主要方法:getAttribute(String name ):獲取name相關聯的屬性。setAttribute():指定name的屬性值為value,並存在session物件中。

getCreationTime():獲取session被建立的時間

5,application物件

application物件為所有使用者儲存共享資訊,其與session物件至少兩處不同,1伺服器為每個客戶建立一個一個session物件來儲存每一個客戶的資訊,對不同的客戶來說,session都是不同的,但是application物件都是相同的一個。2生命週期,session關閉瀏覽器就沒了,application的生命週期就是從伺服器啟動到伺服器關閉。

主要方法:getAttribute(String name):返回由name名字制定的application物件的屬性值。getAttributeNames():返回所有application物件的值。

6,pageContext物件

被封裝為javax.servlet.jsp.pageContext介面,為JSP頁面包裝頁面的上下文資訊,換言之pageContext物件儲存著與本JSP頁面相關的資訊(例如屬性內建物件等)。

常用方法:forward(java.lang.String relativeUrlPath):把頁面重定向到相關另一個網頁或者servlet元件上。getAttribute(String name)或者getAttribute(String name,int scope):用來檢索共享範圍內

以引數name為名字的屬性值。

7,config物件

config物件被封裝成javax.servlet.ServletConfig介面,他表示Servlet的配置。當一個servlet初始化的時候,容器把某些資訊通過

config物件傳給這個servlet,

常用方法:getServletContext():返回執行者的Servlet上下文。getServletNames();返回Sevlet的名字。

8,page物件

page物件是java.lang.Object類中的一個例項。他是jsp實現類物件的一個控制代碼,page物件代表的是jsp本身。或者說編譯以後的Sevlet物件。當使用java作為指令碼語言的時候,也可以使用this來引用page物件

9,exception物件

exception物件是javax.lang.Throwable類中的一個例項。