Tomcat 4/JSP入門指南(轉)

post0發表於2007-08-09
Tomcat 4/JSP入門指南(轉)[@more@]

隨著Catalina Servlet引擎的出現,Tomcat第四版號稱它的效能得到提升,使得它成為一個值得考慮的Servlet/JSP容器。然而,可以幫助你開始瞭解Tomcat的檔案資源卻很少,只有很少的一些書籍,而且在Jakarta網站上的一些資料也不是很清楚。

讓我們來一步一步地瞭解Tomcat的安裝過程,然後討論一下使用一些Tomcat 4/JSP的功能來建構Web應用軟體。

什麼是Tomcat?

Tomcat是一個開放原始碼、執行servlet和JSP Web應用軟體的基於Java的Web應用軟體容器。Tomcat由Apache-Jakarta子專案支援並由來自開放性原始碼Java社群的志願者進行維護。Tomcat Server是根據servlet和JSP規範進行執行的,因此我們就可以說Tomcat Server也實行了Apache-Jakarta規範且比絕大多數商業應用軟體伺服器要好。

安裝Tomcat 4

要開始使用Tomcat 4,你至少要下載Java Development Kit (JDK) 1.2版和Tomcat 4安裝包,他們分別是ZIP檔案和Windows安裝資料包。一旦你安裝了這兩個資料包,你必須加入兩個環境變數:JAVA_HOME和TOMCAT_HOME。JDK將安裝在JAVA_HOME目錄之中,而Tomcat 4則將安裝在TOMCAT_HOME目錄之中。

如果是透過Windows安裝程式進行安裝的,那麼你可以使用選單選項來啟動Tomcat,或者是開啟一個命令提示視窗,進入TOMCAT_HOMEin目錄,執行startup.bat/sh檔案。然後開啟一個瀏覽器並輸入URL 。預設的Tomcat頁面將出現在你的眼前。

Web應用軟體初級讀本

在我們開始之前,我們來回顧一下一個Web應用軟體所包含的部件。Java Servlet規範將Web應用軟體定義為servlets,HTML頁面,類和其他在來自多個行銷商的多個容器上捆綁並執行的資源的一個集合。在 Tomcat中,這些資源被放置在TOMCAT_HOMEwebapps資料夾下面的一個特殊的目錄結構之中。對於一個Web應用軟體的樣本 (myapp)來說這個目錄結構會是這樣:

TOMCAT_HOMEwebappsmyappWEB-INFclasseslib

Myapp 目錄被視為是Web應用軟體的根目錄,所有的JSP,HTML,JavaScript檔案和其他資源都位於這個目錄之下。WEB-INF目錄中包含應用軟體所使用的資源,但是WEB-INF卻不在公共文件根目錄之中。在這個目錄中所包含問的檔案都不能被客戶機所訪問。類目錄中(在WEB-INF下)包含執行myapp時所需的servlets,beans和效用類。在一些例項(log4j)之中,屬性檔案被放置在類的目錄之中。Lib目錄(在WEB-INF下)包含有Java archive files (JARs),例如JDBC驅動器或標籤庫,這是myapp所依靠的。如果一個類出現在JAR檔案中和在類的目錄中,類載入器會載入位於類目錄中的那一個。

Servlets, JSPs和ServletContext

Java Servlet是一個獨立於平臺的部件,它使用由JSP/Servlet容器管理的請求/回應模型來與Web客戶機進行溝通。要編寫一個servlet, GenericServlet和HttpServlet類都會被擴充套件,GenericServlet具有一個abstract服務方式必須得到實現。 HttpServlet擴充套件了GenericServlet並且要求你實現下面方式之中的一個:doGet, doPost, doPut, doDelete, init, destroy和getServletInfo。在典型的情況下實現的是doGet和doPost方式。

有價值的參考

我們參考了James Goodwill的"Apache Jakarta-Tomcat,"一書中的一章,作為這些文章的資訊來源。目前這是唯一的一本特別介紹Tomcat的參考書籍,來自Wrox, Sams和Wiley的其他書籍也會很快問世。

Servlet具有下面的生存週期:

1.當Servlet被例舉時,init方式被呼叫。

2.Servlet可以服務零多個請求。

3.Web應用軟體被關閉,致使destroy方式被呼叫並允許物件被回收。

Init方式可以被用來透過ServletConfig引數給Servlet的屬性初始化。在web.xml檔案中設定的初始化引數被傳遞至ServletConfig之中的init方式並可以透過getInitParameter方式被訪問。

Java 伺服器頁面允許你透過將Java邏輯嵌入至要求的檔案中來產生動態HTML頁面。JSP是HTML,特殊標籤和內嵌Java程式碼的一個混合,每一個JSP 都從這個混合被翻譯為一個servlet,這個servlet被用來在需要JSP的時候傳送HTML回到客戶機。Servlet的所產生的Java程式碼和類檔案被儲存在預設為TOMCAT_HOME/work的一個特定位置,這個目錄在Context元素中被指定。在很多的例項之中,如果一個JSP頁面沒有像預期的那樣進行運作或是如果一個具有行編號的stack trace被顯示,你就可以檢視所產生的程式碼來幫助確定所出現的問題。

這裡是某些JSP可用的隱含變數:

*

request – 向HttpServletRequest作參考

*

response – 向HttpServletResponse作參考

*

pageContext – 在JSP之中提供向名稱空間的訪問

*

session – 向HttpSession作參考

*

application – 向ServletContext作參考

*

config – 向ServletConfig作參考

*

page – 向當前被訪問的JSP例項作參考,相似地,對這個JSP的所產生的Servlet使用這個變數

*

exception – 向由JSP產生的例外作參考,只在isErrorPage設定為真時在JSP上可用

標準JSP標籤是:

*

– 允許你在頁面,請求,session或是應用軟體的範圍內中放置或查詢一個bean(這個標籤對於保持狀態非常有用)。

*

– 允許你對已經定義的bean設定屬性。

*

­– 獲取一個bean的屬性的值,將其轉換為一個字串,並放置在輸出流之中。

*

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-937916/,如需轉載,請註明出處,否則將追究法律責任。

相關文章