|
【IT168 專稿】我們知道,JSP(JavaServer Pages)是一種動態(tài)網(wǎng)頁技術標準。Servlet是Java技術對CGI編程的回答。
支持JSP/Servlet的WEB服務器有很多,選擇合適的WEB服務器對于構(gòu)建JSP網(wǎng)站是非常重要的。比較有名氣的WEB服務器有:Allaire JRun、Apache Tomcat、BEA Weblogic Application Server、IBM WebSphere Application Server、iPlanet Web Server、JavaServer Web Development Kit(JSWDK)以及Java Web Server等。 構(gòu)建JSP網(wǎng)站時,JSWDK可作為學習和調(diào)試使用的WEB服務器,一般的小中型網(wǎng)站可采用Apache+Tomcat作為WEB服務器,大型的企業(yè)級網(wǎng)站可采用IBM WebSphere Application Server、BEA Weblogic Application Server和SUN iPlanet Enterise Web Server等作為WEB服務器。 1、直接使用JSP 對于最小型的WEB站點,可以直接使用JSP來構(gòu)建動態(tài)網(wǎng)頁,對于這種開發(fā)模式,一般可以將所有的動態(tài)處理部分都放置在JSP的Scriptlet中,就像一般使用PHP或ASP架構(gòu)動態(tài)網(wǎng)頁一樣。 2、JSP+JavaBeans 中型站點面對的是數(shù)據(jù)庫查詢、用戶管理和小量的商業(yè)業(yè)務邏輯。在JSP中加入JAVABEANS技術將有助于這種中型網(wǎng)站的開發(fā)。利用JAVABEANS,將很容易完成如數(shù)據(jù)庫連接、用戶登錄與注銷、商業(yè)業(yè)務邏輯封裝的任務,如圖1所示。
采用ASP或PHP架構(gòu)動態(tài)網(wǎng)站,都存在網(wǎng)站的邏輯關系和網(wǎng)站的顯示頁面不容易分開。在邏輯關系異常復雜的網(wǎng)站中,借助于Servlet和JSP良好的交互關系和JavaBeans的協(xié)助,完全可以將網(wǎng)站的整個邏輯結(jié)構(gòu)放在Servlet中,而將動態(tài)頁面的輸出放在JSP頁面中來完成。在這種開發(fā)方式中,一個網(wǎng)站可以有一個或幾個核心的Servlet來處理網(wǎng)站的邏輯, 通過調(diào)用JSP頁面來完成客戶端 (通常是WEB瀏覽器)的請求。在J2EE模型中,Servlet的這項功能可以被EJB取代,如圖2所示。
在J2EE開發(fā)模型中,整個系統(tǒng)可以分為三個主要的部分(如圖3所示):
* 視圖。視圖就是用戶界面部分,在WEB應用程序中也就是HTML、XML、JSP頁面。這個部分主要處理用戶看到的東西,動態(tài)的JSP部分處理了用戶可以看見的動態(tài)網(wǎng)頁,而靜態(tài)的網(wǎng)頁則由HTML、XML輸出。 * 控制器。控制器負責網(wǎng)站的整個邏輯。它用于管理用戶與視圖發(fā)生的交互。在J2EE中,控制器的功能一般是由Servlet、JavaBeans、Enterprise JavaBeans中的SessionBeans來擔當?shù)摹?/P> * 模型。模型就是應用業(yè)務邏輯部分,這一部分的主要角色是Enterprise JavaBeans,借助于EJB強大的組件技術和企業(yè)級的管理控制,開發(fā)人員可以輕松地創(chuàng)建出可重用的業(yè)務邏輯模塊。 JSP構(gòu)建的網(wǎng)站操作系統(tǒng)可以選用Unix、Linux或Windows平臺,Web服務器可以選擇商業(yè)的或者使用如Apache和Tomcat等免費的服務器軟件,后臺數(shù)據(jù)庫可根據(jù)實際情況選擇Oracle、Sybase、DB2或Informax、MySQL等。 Apache 和 Tomcat都可以做為獨立的WEB服務器來用,apache功能強大、高效,但并不能支持JSP及serlet。Tomcat是Sun和Apache合作做出來的JSP Server,Tomcat目前已經(jīng)成為Apache主要的Servlet和JSP的引擎。Tomcat在設計上是以獨立的Server執(zhí)行,而不像Jserv是附在Apache中,這樣就更可以發(fā)揮在servlet中,非HttpServlet的能力。Tomcat是Java程序,所以只要有JDK就可以使用,不需要考慮操作系統(tǒng)平臺。 作為WEB服務器擴展的Tomcat服務器有一些問題需要說明: 當處理靜態(tài)頁面時,Tomcat不如Apache迅速;Tomcat不象Apache一樣可配置; Tomcat不象Apache一樣強壯?;谝陨显?,一個現(xiàn)實的網(wǎng)站使用一個Apache作為Web服務器,為網(wǎng)站的靜態(tài)頁面請求提供服務;并使用Tomcat服務器作為一個Servlet/JSP插件,顯示網(wǎng)站的動態(tài)頁面。 采用apache+tomcat這樣的結(jié)構(gòu)才具有更特出的優(yōu)點,主要體現(xiàn)在具有更好的可擴展性和安全性。這種類型的站點的主要特點是每一個頁面都可能是動態(tài)生成的,但這些數(shù)據(jù)中主要部分還是靜態(tài)的(比如,各類圖像GIF、JPG、PNG,流式媒體等),這種結(jié)構(gòu)的優(yōu)點是兼有可擴展性和安全性。 |
|
|