JSP 內置對象
jsp一共有9個內置對象,這些對象由web容器創造並且適用於所有jsp頁面。
九大內置對象如列表所示:
| 對象 | 類型 |
|---|---|
| out | JspWriter類的實例 |
| request | HttpServletRequest接口的實例 |
| response | HttpServletResponse接口的實例 |
| config | ServletConfig類的實例 |
| application | ServletContext類的實例 |
| session | HttpSession類的實例 |
| pageContext | PageContext類的實例 |
| page | Object類 |
| exception | Throwable |
out
對於任意想要寫入緩存的數據,都可以使用JSP的內置函數out,它是JspWriter對象。
在servlet中書寫格式為 PrintWriter out=response.getWriter();
但在JSP中可以直接使用。
request
request是一個類型為HttpServletRequest的隱式對象,即由web容器為每個JSP請求創建。它可以用來獲取請求信息,如參數、頭信息、遠程地址、服務器名稱、服務器端口、內容類型、字符編碼等。
它還可以用於從jsp請求范圍中設置、獲取和刪除屬性。
response
response是一個類型為HttpServletResponse的隱式對象。即HttpServletResponse的實例由web容器為每個jsp請求創建。
它可以用來添加或操作響應,例如將響應重定向到另一個資源、發送錯誤等。
config
config是ServletConfig類型的隱式對象。此對象可用於獲取特定JSP頁面的初始化參數。config對象是由web容器為每個jsp頁面創建的。通常用於從web.xml文件獲取初始化參數。
application
在JSP中,application是ServletContext類型的隱式對象。
當應用程序或項目部署在服務器上時,web容器只創建一次ServletContext實例。
此對象可用於從configuaration文件(web.xml)獲取初始化參數。它還可以用於從應用程序范圍中獲取、設置或刪除屬性。
session
在JSP中,session是類型為HttpSession的隱式對象。Java開發人員可以使用這個對象來設置、獲取或刪除屬性或獲取會話信息。
pageContext
在JSP中,pageContext是類型為pageContext類的隱式對象。pageContext對象可用於設置、獲取或刪除下列范圍之一的屬性:
- page
- request
- session
- application
jsp中page范圍是頁面默認范圍
page
在JSP中,page是object類類型的隱式對象。這個對象被分配給自動生成的servlet類的引用。
page是this的同義詞,用於調用翻譯后的servlet類定義的方法。
它是這樣寫的:Object page=this;
為了使用這個對象,它必須轉換為Servlet類型。例如:<%(HttpServlet)page.log("message"); %>
因為它是Object類型的,所以很少使用它,因為您可以在jsp中直接使用這個對象。例如:<% this.log("message"); %>
exception
在JSP中,exception是java.lang類型的隱式對象。Throwable類。此對象可用於打印異常。但是它只能用於錯誤頁面。
Github:
https://github.com/whyicn/JSP_implicit_object/tree/master
參考文獻:
https://www.tutorialspoint.com/jsp/jsp_syntax.htm
https://www.runoob.com/jsp/jsp-tutorial.html
