當您要將企業應用程序轉變成與Web服務一起使用時,最簡單的途徑就是將單個操作與單個的企業服務結合在一塊。但這並不是最好的方法。在本文中,Jerome Josephraj 將向您展示如何構架基於分層的、正確的模型-視圖-控制器(MVC)設計模式的Web 服務應用程序。為此,他修改了 Struts(一種流行的開放源碼MVC 框架),以使其適用於 Web 服務領域。通過研究此處所概述的樣本應用程序,您將知道如何才能將 Struts 與 Web 服務聯合起來使用。
不斷發展的 Java 編程語言和Sun 公司的J2EE 規范使得遵守各類准則的軟件開發者們能夠創建出分布式計算應用程序,這些應用程序在以前只能通過相關專門工具才可實現。這樣,當某些開發團體要選擇在 Java 平台中實現新系統時,其他團體就會通過另外的技術來創建、提高並維護應用程序,然後將它們集成到已有的各類分布式應用程序中去。這種情形就引起了互操作性的競爭。新應用程序與舊應用程序如何交互呢?答案就是:Web 服務。Web 服務是程序設計新的聖杯。它們能夠共享並協調分散的各類計算資源。
在本文中,您將了解實現此目的的一種方法。您將看到如何在與 Web 服務相結合的開放源碼 Struts 框加的基礎上來構建應用程序。在開始之前您必須了解一些 J2EE 與 Web 服務的相關知識。這裡,我將簡要地介紹下 Struts 架構與模型-視圖-控制器(MVC)。
MVC 模式:分離開發角色
MVC 設計模式很清楚的劃定了程序員與設計者的角色界限。換句話說,從商業邏輯上拆解了數據。這種模式是讓設計者集中於設計應用程序的顯示部分,而開發者則集中於開發驅動應用程序功能所需的組件。
MVC 模式有好幾種變異,不過它們都是基於相同的基礎結構:應用程序的數據模型 (Model),顯示層代碼(VIEw),以及程序控制邏輯( Controller) 是存在其中的獨立但能相互間通信的組件。模型組件描述並處理應用程序數據。視圖指的是用戶界面; 它反映的是模型數據並把它遞交給用戶。控制器是將視圖上的行為(例如,按下 Submit 按鈕)映射到模型上的操作(例如,檢索用戶詳細信息)。模型更新後,視圖也被更新,用戶就能夠完成更多行為。MVC 模式使代碼易懂而且使代碼更容易重用; 另外,在很多工程中視圖經常要被更新,MVC 模式將模型和控制器與這些所做的更改獨立開來。