【IT168 專稿】我們知道,JSP(JavaServer Pages)是一種動態網頁技術標準。 Servlet是Java技術對CGI程式設計的回答。
支援JSP/Servlet的WEB伺服器有很多,選擇合適的WEB伺服器對於建立JSP網站是非常重要的。比較有名氣的WEB伺服器有:Allaire JRun、Apache Tomcat、BEA Weblogic Application Server、IBM WebSphere Application Server、iPlanet Web Server、JavaServer Web Development Kit(JSWDK)以及Java Web Server等。
建置JSP網站時,JSWDK可作為學習和偵錯使用的WEB伺服器,一般的小型中型網站可採用Apache+Tomcat作為WEB伺服器,大型的企業級網站可採用IBM WebSphere Application Server、BEA Weblogic Application Server和SUN iPlanet Enterise Web Server等作為WEB伺服器。
1.直接使用JSP
對於最小型的WEB站點,可以直接使用JSP來建立動態網頁,對於這個開發模式,一般可以將所有的動態處理部分都放置在JSP的Scriptlet中,就像一般使用PHP或ASP架構動態網頁一樣。
2、JSP+JavaBeans
中型站點面對的是資料庫查詢、使用者管理和小量的商業業務邏輯。在JSP中加入JAVABEANS技術將有助於這種中型網站的開發。利用JAVABEANS,將很容易完成如資料庫連線、使用者登入與登出、商業業務邏輯封裝的任務,如圖1所示。
圖1 |
3、JSP+JavaBeans+Servlet
採用ASP或PHP架構動態網站,都存在網站的邏輯關係和網站的顯示頁面不容易分開。在邏輯關係異常複雜的網站中,借助於Servlet和JSP良好的交互關係和JavaBeans的協助,完全可以將網站的整個邏輯結構放在Servlet中,而將動態頁面的輸出放在JSP頁面中來完成。在這種開發方式中,一個網站可以有一個或幾個核心的Servlet來處理網站的邏輯, 透過呼叫JSP頁面來完成客戶端(通常是WEB瀏覽器)的請求。在J2EE模型中,Servlet的這項功能可以被EJB取代,如圖2所示。
圖2 |
4.J2EE開發模型
在J2EE開發模型中,整個系統可以分為三個主要的部分(如圖3):
圖3 |
* 控制器。控制器負責網站的整個邏輯。它用於管理使用者與視圖發生的互動。在J2EE中,控制器的功能一般是由Servlet、JavaBeans、Enterprise JavaBeans中的SessionBeans來擔任的。
* 模型。模型就是應用業務邏輯部分,這一部分的主要角色是Enterprise JavaBeans,借助於EJB強大的元件技術和企業級的管理控制,開發人員可以輕鬆地創建出可重複使用的業務邏輯模組。
JSP建構的網站作業系統可以選用Unix、Linux或Windows平台,Web伺服器可以選擇商業的或使用如Apache和Tomcat等免費的伺服器軟體,後台資料庫可依實際情況選擇Oracle、Sybase、DB2或Informax、MySQL等。
Apache 和Tomcat都可以做為獨立的WEB伺服器來用,apache功能強大、高效,但並不能支援JSP及serlet。 Tomcat是Sun和Apache合作做出來的JSP Server,Tomcat目前已經成為Apache主要的Servlet和JSP的引擎。 Tomcat在設計上是以獨立的Server執行,而不像Jserv是附在Apache中,這樣就更可以發揮在servlet中,非HttpServlet的能力。 Tomcat是Java程序,所以只要有JDK就可以使用,不需要考慮作業系統平台。
作為WEB伺服器擴充的Tomcat伺服器有一些問題需要說明: 當處理靜態頁面時,Tomcat不如Apache迅速;Tomcat不像Apache一樣可設定;Tomcat不像Apache一樣強壯。基於上述原因,一個現實的網站使用一個Apache作為Web伺服器,為網站的靜態頁面請求提供服務;並使用Tomcat伺服器作為一個Servlet/JSP插件,顯示網站的動態頁面。
採用apache+tomcat這樣的結構才有更特出的優點,主要體現在具有更好的可擴展性和安全性。這種類型的站點的主要特點是每個頁面都可能是動態生成的,但這些資料中主要部分還是靜態的(例如,各類圖像GIF、JPG、PNG,串流媒體等),這種結構的優點是兼有可擴展性和安全性。