JSP(二):JSP九大內建物件、四個作用域物件
jsp的九大內建物件:
內建物件:
jsp檔案在轉譯成其對應的Servlet檔案的時候自動生成的並宣告的物件。我們在jsp頁面中直接使用即可。
注意:
內建物件在jsp頁面中使用,使用區域性程式碼塊或者指令碼段語句來使用。不能夠在全域性程式碼塊中使用。
內容:九個物件
pageContext:頁面上下文物件,封存了其他內建物件。封存了當前jsp的執行資訊。
注意:每個Jsp檔案單獨擁有一個pageContext物件。
作用域:當前頁面。
request:封存當前請求資料的物件。由tomcat伺服器建立。一次請求
session:此物件用來儲存使用者的不同請求的共享資料的。一次會話
application:也就是ServletContext物件,一個專案只有一個。儲存使用者共享資料的物件,以及完成其他操作。專案內
response:響應物件,用來響應請求處理結果給瀏覽器的物件。設定響應頭,重定向。
out:響應物件,Jsp內部使用。帶有緩衝區的響應物件,效率高於response物件。
page:代表當前Jsp的物件。相當於java中的this。
exception:異常物件。儲存了當前執行的異常資訊。
注意:使用此物件需要在page指定中使用屬性isErrorPage="true"開啟。
config:也就是ServletConfig,主要是用來獲取web.xml中的配置資料,完成一些初始化資料的讀取。
out物件
-
out物件用於向瀏覽器輸出資料,與之對應的是Servlet的PrintWriter物件。然而這個out物件的型別並不是PrintWriter,是JspWriter
request
-
內建物件request其實就是HttpServletRequest,在Servlet講解的時候已經詳細說明了,沒什麼好說的
response
-
內建物件response其實就是HttpServletResponse,在Servlet講解的時候已經詳細說明了,沒什麼好說的
config
-
內建物件config其實就是ServletConfig
session
-
內建物件session其實就是HttpSession。,在Servlet講解的時候已經詳細說明了,沒什麼好說的
注意:在page指令配置如下資訊,session將不可使用
<%@page session="false" %>
application
-
內建物件application其實就是ServletContext物件,在Servlet講解的時候已經詳細說明了,沒什麼好說的
page
-
內建物件page是HttpJasPage物件,其實page物件代表的就是當前JSP頁面,是當前JSP編譯後的Servlet類的物件
exception
-
內建物件exception是java.lang.Exception類的物件,exception封裝了JSP頁面丟擲的異常資訊。exception經常被用來處理錯誤頁面
pageContext
pageContext是內建物件中最重要的一個物件,它代表著JSP頁面編譯後的內容(也就是JSP頁面的執行環境)!
既然它代表了JSP頁面編譯後的內容,理所當然的:它封裝了對其他8大內建物件的引用!,也就是說,通過pageContext可以獲取到其他的8個內建物件!
四個作用域物件:
pageContext:當前頁面.解決了在當前頁面內的資料共享問題。獲取其他內建物件。
request:一次請求。一次請求的servlet的資料共享。通過請求轉發,將資料流轉給下一個servlet。
session:一次會話.一個使用者的不同請求的資料共享。將資料從一次請求流轉給其他請求。
application:專案內.不同使用者的資料共享問題。將資料從一個使用者流轉給其他使用者。
作用:
資料流轉