標籤:j2ee jsp
簡介
JSP,Java Server Page,Java伺服器頁面。它是在傳統的網頁HTML檔案中插入Java程式段(Scriptlet)和JSP標記,從而形成JSP檔案,尾碼名為(*.jsp)。
特性
◆解耦
JSP技術使用Java程式設計語言編寫類XML的tags和scriptlets,來封裝產生動態網頁的處理邏輯。網頁還能通過tags和scriptlets訪問存在於服務端的資源的應用邏輯。JSP將網頁邏輯與網頁設計的顯示分離,JSP是一種動態網頁面技術,它的主要目的是將表示邏輯從Servlet中分離出來。
◆跨平台性:
用JSP開發的Web應用是跨平台的,既能在Linux下運行,也能在其他動作系統上運行。JSP與Servlet一樣,是在伺服器端執行的。
◆物件導向:
JSP具備了Java技術的簡單易用,完全的物件導向,具有平台無關性且安全可靠,主要面向網際網路的所有特點。
文法
HTML文法的java擴充,加入了新的標籤。
JSP原始代碼中包含了JSP元素和Template data兩類
1)Template data
標記<%...%>之外的部分,他們是jsp引擎不處理的部分。比如HTML中顯示的內容,他們會直接傳送到用戶端的瀏覽器。
2)JSP元素
標記<%...%>中的部分,由JSP引擎直接處理的部分。
注意:這部分必須符合JSP文法,否則編譯會出錯。
例如:
執行過程:
當伺服器上的一個JSP頁面第一次被請求時,JSP引擎首先將JSP頁面編譯成Servlet(稍後會解釋),然後執行該Servlet。該Servlet主要完成以下2項任務:
(1)頁面中的HTML標記——》用戶端的瀏覽器——》解釋執行。
(2)JSP指令標記、動作標記、JSP聲明、程式碼片段和運算式 ——》伺服器 ——》執行,然後將結果送給瀏覽器。
也可表明他們之間的轉換關係。
1)將JSP轉換為Servlet
2)JSPServlet編譯為class檔案
3)執行JSP
樣本:
<%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.util.*"%><HTML><BODY><%for(int i=0;i<2;i++){%> Hello!<br><%}%></BODY></HTML>
HTML檔案:
<HTML> <BODY> 你好<br> 你好<br> </BODY></HTML>
最終在瀏覽器中顯示你好字樣。
總結: 在介紹jsp執行過程的時候,我們就已經知道了Servlet是jsp的基礎。如果沒有Servlet的轉換,它的請求就無法成功執行。這裡只是簡單的提及了一下Servlet,相關內容見下篇部落格。 雖然現在的總結比較淺顯,但總結過後,思路也漸漸清晰了, J2EE的十三個技術仍在學習中。
J2EE的十三個技術——JSP