什麼是JSP?
JSP:Java Server Page,Java服務頁面.其根本是一個簡化的Servlet設計,它是由Sun Microsystems公司倡導、許多公司參與一起建立的一種動態網頁技術標準。JSP技術有點類似ASP技術,它是在傳統的網頁HTML(標準通用標記語言的子集)文件(.htm,.html)中插入Java程序段(Scriptlet)和JSP標記(tag),從而形成JSP文件,後綴名爲(*.jsp)。 用JSP開發的Web應用是跨平臺的,既能在Linux下運行,也能在其他操作系統上運行。
Jsp頁面: 用html語言寫頁面,用java語言寫業務邏輯.
特點:既可以寫html代碼,也可以寫java代碼。
JSP的作用:
Jsp的主要作用是用java語言來開發動態資源的技術。
JSP的運行過程:
在第一次訪問時JSP時,會經過以下步驟:
1. tomcat服務器把jsp文件翻譯成java源文件(work目錄下)
2. tomcat服務器然後把java源文件編譯成class字節碼
3. tomcat服務器構造類對象
4. tomcat服務器調用類對象的方法
在以後的訪問中,只用執行上面的第四步
注意:
1. 當jsp文件內容發送變化,那麼會重新翻譯和編譯jsp文件。
2. 如果java源文件和class字節碼刪除了,第一次訪問jsp時,也會重新翻譯和編譯。
JSP與Servlet的關係:
Jsp就是一個servlet文件;servlet的知識點在jsp中全部適用,但jsp的部分知識點未必在servlet都能適用!
各自的生命週期:
- Servlet的生命週期:
構造方法(第一次訪問時)
init方法(第一次訪問時)
service方法(第n次訪問時)
destroy方法 - Jsp的生命週期:
翻譯成java源文件(第一次訪問時)
java源文件編譯成class字節碼(已經是servlet類)(第一次訪問時)
構造方法(第一次訪問時)
_jspInit()方法(第一次訪問時)
_jspService方法(第n次訪問時)
_jspDestroy()方法
JSP方法
分爲Jsp模板,Jsp表達式,Jsp腳本,Jsp聲明,Jsp註釋。
- Jsp模板:
Jsp文件中html代碼部分就是模塊 - Jsp表達式:
語法: <%=變量或表達式%>
作用: 向瀏覽器輸出變量的值或表達式計算的結果 - Jsp腳本:
語法: <% java代碼 %>
作用: 執行java代碼
注意:其原理是直接把java腳本代碼翻譯到java文件的_jspService方法中執行;Jsp腳本可以穿插html代碼混合使用。 - Jsp聲明:
語法: <%! 變量或方法%>
作用: 用於聲明jsp文件的變量和方法
注意:
聲明的是成員變量和成員方法。
方法不能在腳本中定義,而只能在聲明中定義。
不能聲明和翻譯成的java文件中原有方法重複。 - Jsp註釋:
語法: <%– jsp註釋–%>
注意:
(1)html註釋是會被翻譯到java源文件中,也會被執行
(2)jsp註釋是不會翻譯到java源文件中,不會被執行。
Jsp的三大指令:
taglib指令、 include指令、page指令。
- taglib指令:
taglib指令主要是用於導入jsp的標籤庫。 - include指令:
include指令用於導入其他頁面文件。
語法: <%@include file=”導入的頁面路徑”%>
注意:
(1)包含與被包含的頁面先合併內容翻譯到一個java源文件中,再編譯執行一個java文件。(先合併再翻譯),叫靜態包含(源碼包含)
(2)被包含的頁面不要使用全局的html標籤。(html/head/title/body) - page指令:
page指令主要是用於告訴tomcat服務器如何翻譯jsp文件。