在 Java EE
的藍圖中,JSP/Servlet是屬於Web層技術,JSP與Servlet是一體的兩面,您可以使用單獨一項技術來解決動態網頁呈現的需求,但最好的
方式是取兩者的長處,JSP是網頁設計人員導向的,而Servlet是程式設計人員導向的,釐清它們之間的職責可以讓兩個不同專長的團隊彼此合作,並降低
相互間的牽制作用。
5.5.4。
先來看看如何撰寫
基本的JSP動態網頁,以及JSP背後運
作的機制,JSP事實上也是轉譯為 Servlet,骨子裡還是個Servlet程式。
JSP轉譯之後就
是Servlet,各個隱含物件都對應於
Servlet API中的某個物件,如果您對隱含物件的功能有什麼不瞭解的,查詢Servlet API文件中該物件的說明就可以瞭解了。
JSP中有數種類
型的Action元素,有一些使用於
JavaBean,有一些使用於自訂標籤等等,這邊先介紹幾個常用的元素。
JavaBean
是一個純綷的Java類別,它遵守一些規
則與命名方式,它是一個公開(public)的類別,具有公開的setter與getter方法,在JSP中可以使用它將程式的邏輯處理與呈現部份分離。
Expression
Language在JSP
2.0中納入了JSP的標準,它定義了變數存取、運算、隱含物件、函式等內容,配合JavaBean或其它標籤庫,可以實現較好的邏輯與視圖分離之目的。
您可以將一些網頁
格式處理或是限定存取之類的需求,使用標
籤庫來處理,程式邏輯撰寫在標籤處理類別(Tag Handler
Class)中,並定義好標籤庫定義檔案(.tld),而在JSP網頁中使用自訂標籤來撰寫網頁。
Tag
File是從JSP
2.0開始新增的功能,主要的目的是讓撰寫JSP網頁的網頁設計人員即使在不懂Java語法的情況下,也可以使用JSP語法來自訂標籤。
如果您瞭解JSP
中的隱含物件之意義,再來瞭解
Servlet中的對應物件,則學習Servlet就不是件難事。
使用
Filter,您可以先對request作一些前置處
理,例如進行身份驗證、過濾不安全的請求、監視統計請求的來源與出處等等,或是對response進行後置處理,例如對輸出先進行壓縮、對XML的呈現進
行轉換等等。
|
|