- 客戶端發出Request請求
- JSP Container 將JSP轉譯成Servlet的源代碼
- 將產生的Servlet源代碼經過編譯後,並加載到內存執行
- 把結果Response(響應)至客戶端
在執行JSP網頁時,通常可以分爲兩個時期:轉譯時期(Translation Time)和請求時期(Request Time)
轉譯時期:JSP網頁轉移成Servlet類。
請求時期:Servlet類執行後,響應結果至客戶端。
轉譯期間做了兩件事情:
轉譯時期:將JSP網頁轉移爲Servlet源代碼 .java.
編譯時期:將Servlet 源代碼 .java編譯成 Servlet類 .class.
JSP的頁面構成元素:
- 註釋
-
1).顯示註釋:<!--註釋內容-->
2).隱式註釋:<%--註釋內容-->(在客戶端的HTML源代碼中看不到這些註釋的內容)
-
- 指令
-
page指令:用於設定頁面的屬性
-
include指令:該指令用於包含一個文本或代碼的文件
-
- 元素腳本
JSP 的註釋:(同上)
靜態的和動態的include:
動態include: 用jsp:include動作實現 <jsp:include page="included.jsp" flush="true" />它總是會檢查所含文件中的變化,適合用於包含動態頁面,並且可以帶參數。
靜態include: 用include僞碼實現,定不會檢查所含文件的變化,適用於包含靜態頁面<%@ include file="included.htm" %>
JSP 標準標籤庫:
相關參考鏈接:
http://wiki.jikexueyuan.com/project/jsp/standard-tag-library.html
-
核心標籤庫
-
格式標籤庫
-
SQL 標籤庫
-
XML 標籤庫
- JSTL 函數標籤庫
JSP 的九大內置對象:
- request 請求對象 類型 javax.servlet.ServletRequest 作用域 Request
- response 響應對象 類型 javax.servlet.SrvletResponse 作用域 Page
- pageContext 頁面上下文對象 類型 javax.servlet.jsp.PageContext 作用域 Page
- session 會話對象 類型 javax.servlet.http.HttpSession 作用域 Session
- application 應用程序對象 類型 javax.servlet.ServletContext 作用域 Application
- out 輸出對象 類型 javax.servlet.jsp.JspWriter 作用域 Page
- config 配置對象 類型 javax.servlet.ServletConfig 作用域 Page
- page 頁面對象 類型 javax.lang.Object 作用域 Page
- exception 例外對 類型 javax.lang.Throwable 作用域 page