top
Loading...
用Servlet開發企業級三層Web應用(一)

隨著Web技術的深入發展,傳統的客戶機/服務器結構的企業級應用系統已逐漸為瀏覽器/中間層/后臺數據庫服務器的三層結構所代替,這種結構的改變無論是在Microsoft的Windows DNA中還是在以Java技術為核心的應用中都得到了具體的體現。Servlet技術的出現推動了以Java為核心技術的企業級三層Web應用的發展,它最適合于開發與Web服務器緊密相關的中間層。


1.利用Servlet技術的三層結構解決方案


企業級Web應用通常包含Web瀏覽器、中間層和后臺數據庫服務器三個層次。

(1)Web瀏覽器

Web瀏覽器是三層結構中的第一個層次,利用Web瀏覽器作為客戶端,使客戶面對一個統一的應用界面。

(2)Servlet中間層

中間層是指運行在服務器中的,聯系Web瀏覽器與后臺數據庫服務器的軟件。目前可用于實施中間層的技術包含CGI、Java及Servlet等。由于Servlet由Web服務器進行加載,利用Java語言進行開發,它在性能、可靠性以及可移植性等方面均比CGI有了長足的進步,因此Servlet是目前最適合實現中間層的技術。

(3)后臺數據庫服務器

后臺數據庫服務器是用戶存放數據信息的地方,中間層可以通過ODBC(對CGI中間層)或是JDBC(對Servlet中間層)來訪問后臺數據庫。


2.規劃一個三層Web應用


下面用一個簡單的Web三層應用的例子說明如何利用Servlet技術構造中間層。這里我們實現一個最簡單的圖書管理系統。

(1)用戶可以通過Web瀏覽器將圖書信息提交給中間層,由中間層將圖書數據入庫。

(2)用戶可以通過Web瀏覽器查詢圖書信息,由中間層取得圖書數據交給瀏覽器顯示。

系統是一個采用三層結構的Web應用,數據庫服務器采用Microsoft Access,中間層是一個Servlet,系統的流程包含四個步驟∶

*用戶在HTML頁面中輸入圖書信息,輸入的數據提交給中間層的BookServlet;

*中間層BookServlet構建一個SQL語句,將SQL語句提交給JDBC;

*后臺數據庫服務器執行SQL語句并將結果返回給中間層BookServlet;

*中間層BookServlet根據數據庫返回的結構建一個HTML返回給客戶端瀏覽器。

對系統的軟件結構了解之后,我們給出整個系統的設計規劃:

*設計數據庫結構

為簡化起見,圖書數據庫僅包含一個表BookTable,在該表中包含以下字段:

列名稱

類型

長度

說明

bookname

string

50

書名

isbn

string

50

圖書統一書號

*設計瀏覽器HTML頁面

用戶可以在該頁面中查詢已入庫的圖書,或輸入新的圖書信息。

(3)設計中間層BookServlet

用Servlet技術實現的中間層在瀏覽器和數據庫服務器之間完成“粘合”作用(我們將其命名為BookServlet),它根據瀏覽器HTML傳遞的參數創建合適的SQL語句,將SQL語句提交給后臺數據庫服務器,然后根據SQL語句執行的結果產生一個HTML頁面傳遞給瀏覽器。

北斗有巢氏 有巢氏北斗