一:什么是Jsp和Servlet
Jsp(JavaServer Page)是在普通Html中嵌入了Java代碼的一個(gè)腳本,在這一點(diǎn)上,它與其它的腳本語言(如Php)一樣,但它與其它語言不同的是:其它腳本語言由服務(wù)器直接解釋這個(gè)腳本,而Jsp則由Jsp容器(如Tomcat)首先將其轉(zhuǎn)化為Servlet,然后再調(diào)用Javac將Servlet編譯為Class文件。最終,服務(wù)器解釋的是Class文件。那么什么是Servlet呢?Servlet其實(shí)是一個(gè)非凡的Java類,Servlet類一般從HttpServlet類繼續(xù)而來,在這個(gè)類中至少要實(shí)現(xiàn)doGet或者doPost函數(shù),在這兩個(gè)函數(shù)中處理來自客戶的請求,然后將結(jié)果返回。Servlet和Jsp是Sun公司J2EE架構(gòu)中重要的部分。由于基于Java語言,因此其可以方便的調(diào)用功能強(qiáng)大的Java API(如JDBC)。
二:Tomcat概述
Tomcat是一個(gè)免費(fèi)的開源的Serlvet容器,它是Apache基金會的Jakarta項(xiàng)目中的一個(gè)核心項(xiàng)目,由Apache,Sun和其它一些公司及個(gè)人共同開發(fā)而成。由于有了Sun的參與和支持,最新的Servlet和Jsp規(guī)范總能在Tomcat中得到體現(xiàn)。Tomcat被JavaWorld雜志的編輯選為2001年度最具創(chuàng)新的java產(chǎn)品,可見其在業(yè)界的地位。
Tomcat 最新版本是4.0x。4.0x與3.x的架構(gòu)不同,而是重新設(shè)計(jì)的。Tomcat4.0x中采用了新的Servlet容器:Catalina,完整的實(shí)現(xiàn)了Servlet2.3和Jsp1.2規(guī)范。Tomcat提供了各種平臺的版本供下載,可以從http://jakarta.apache.org上下載其源代碼版或者二進(jìn)制版。由于Java的跨平臺特性,基于Java的Tomcat也具有跨平臺性。
與傳統(tǒng)的桌面應(yīng)用程序不同,Tomcat中的應(yīng)用程序是一個(gè)WAR(Web Archive)文件。WAR是Sun提出的一種Web應(yīng)用程序格式,與JAR類似,也是許多文件的一個(gè)壓縮包。這個(gè)包中的文件按一定目錄結(jié)構(gòu)來組織:通常其根目錄下包含有Html和Jsp文件或者包含這兩種文件的目錄,另外還會有一個(gè)WEB-INF目錄,這個(gè)目錄很重要。通常在WEB-INF目錄下有一個(gè)web.xml文件和一個(gè)classes目錄,web.xml是這個(gè)應(yīng)用的配置文件,而classes目錄下則包含編譯好的Servlet類和Jsp或Servlet所依靠的其它類(如JavaBean)。通常這些所依靠的類也可以打包成JAR放到WEB-INF下的lib目錄下,當(dāng)然也可以放到系統(tǒng)的CLASSPATH中,但那樣移植和治理起來不方便。
在Tomcat中,應(yīng)用程序的部署很簡單,你只需將你的WAR放到Tomcat的webapp目錄下,Tomcat會自動檢測到這個(gè)文件,并將其解壓。你在瀏覽器中訪問這個(gè)應(yīng)用的Jsp時(shí),通常第一次會很慢,因?yàn)門omcat要將Jsp轉(zhuǎn)化為Servlet文件,然后編譯。編譯以后,訪問將會很快。另外Tomcat也提供了一個(gè)應(yīng)用:manager,訪問這個(gè)應(yīng)用需要用戶名和密碼,用戶名和密碼存儲在一個(gè)xml文件中。通過這個(gè)應(yīng)用,輔助于FTP,你可以在遠(yuǎn)程通過Web部署和撤銷應(yīng)用。當(dāng)然本地也可以。
Tomcat不僅僅是一個(gè)Servlet容器,它也具有傳統(tǒng)的Web服務(wù)器的功能:處理Html頁面。但是與Apache相比,它的處理靜態(tài)Html的能力就不如Apache。我們可以將Tomcat和Apache集成到一塊,讓Apache處理靜態(tài)Html,而Tomcat處理Jsp和Servlet。這種集成只需要修改一下Apache和Tomcat的配置文件即可。
新聞熱點(diǎn)
疑難解答
圖片精選