


[摘 要] 針對政府機關辦公自動化的需要,基于Struts采用MVC模式,利用J2EE平臺,設計OA系統體系結構、MVC框架和實現方案。系統在實際運用中,能夠滿足高效率處理日常工作的需要,有效地完成各項工作,具有較大的理論和實際意義。
[關鍵詞] Struts;J2EE體系結構;MVC;辦公自動化系統
[中圖分類號] F270.7;TP317.1 [文獻標識碼] A [文章編號] 1673 - 0194(2013)13-0037-03
1 引 言
隨著信息技術特別是互聯網技術的廣泛普及與應用,移動信息化辦公已成為加快企業發展建設、提高企業辦公效率、增強企業管理服務能力、促進企業全球化發展和國際服務化建設的重要手段。
移動信息化辦公的真正意義不是指簡單地借助電腦處理收發電子郵件等日常辦公,而是通過手機和計算機系統的各種應用,使各獨立的工作者能實現信息共享,協同工作,遠程辦公,對工作流程進行控制,全面提高企業的辦公效率,實現信息共享和無紙化辦公。
鑒于此,本文主要研究基于Struts構架、J2EE平臺的辦公自動化系統的設計與實現。辦公自動化系統是實現企事業單位內部各級部門之間以及企事業單位內部與外部之間辦公信息的收集與處理、調用與共享,以及實現科學決策的信息系統,對于提高工作效率、實現規范化辦公處理、輔助領導決策有重要意義。
2 技術構架
2.1 MVC模式
MVC,即把一個應用的輸入、處理、輸出流程按照Model、View、Controller的方式進行分離,這樣一個應用被分成3個層——模型層、視圖層、控制層。隨著網絡應用的快速增加,MVC模式對于Web應用的開發無疑是一種非常先進的設計思想,無論選擇哪種語言,無論應用多復雜,它都能為用戶理解分析應用模型提供最基本的分析方法,為構造產品提供清晰的設計框架,為軟件工程提供規范的依據。
使用MVC模式可以有效地避免邏輯關系之間的相互糾纏,從而簡化了維護工作。它使每一部分的細節都隱藏在接口背后,同時減少了它們之間的代碼耦合。在編寫Java代碼和維護HTML及表示層的人們之間,提供了一個自然的分界。
一個成功的軟件需要有一個成功的架構,但軟件架構的建立是一個復雜的、持續改進的過程,成功的軟件開發者不可能對每個不同的項目做不同的架構,而總是盡量重用以前的架構,或開發出盡量通用的架構方案,Struts就是其中之一,Struts是一種流行的基于J2EE的架構方案,是一個比較好的MVC框架,提供了對開發MVC系統的底層支持。
MVC模式是一種把應用系統抽象地劃分為Model(模型)、View(視圖)、Controller(控制器)3個功能截然不同的部分,并讓它們協同工作的架構模式。Model是應用對象,View是它在屏幕上的表示,Controller定義用戶界面對用戶輸入的響應方式。其體系結構如圖1所示。
本系統的開發即是采用基于Struts的J2EE的構架方式,系統將用一組實體Bean來表示數據實體,FormBean表示View層的實體,ModelBean表示數據層的實體。FormBean與JSP頁面綁定向用戶呈現數據,用戶與頁面交互后,數據作為FormBean提交到ActionServlet,ActionServlet作為一個Action Controller,通過判斷,根據業務邏輯將數據打包成ModelBean轉到業務邏輯層,業務邏輯層負責業務處理,完成處理后如果有結果需要返回,則將結果作為ModelBean返回到ActionServlet,ActionServlet將ModelBean打包成FormBean,跟JSP綁定呈現給用戶。
2.2 Struts框架
Struts提供了一個實現MVC架構的高度自動化的方式。它的結構實現了MVC,并包括一個控制器Servlet、一組JSP頁面和應用程序的商業邏輯。控制器將用戶請求打包,并把它們導向架構中的其他對象。
Struts構架是圍繞一個ActionMapping 結構的。控制器用 ActionMapping 把HTTP消息形式的用戶請求轉換成應用程序的動作。ActionMapping指定請求的路徑、計劃處理請求的對象以及任何服務該請求需要的其他信息。ActionMapping創建了一個 Action 對象來處理請求。一旦Action對象完成了一個任務,它就通過在一個JSP頁面上寫結果來直接回應一個用戶請求,或者它可以讓一個應用程序流動到其他地方做回應。
3 體系結構
在系統設計模型中,應用層包括用戶交互界面、體現業務的界面、業務數據、配置數據等功能,包括了開發的主要工作。具體的功能如圖2所示。
4 實現方案
由于Java是面向對象的、與平臺無關的、面向網絡的多線程編程語言,因此用 J2EE作為服務器應用的開發平臺也是基于Web的OA系統實現的一個解決方案。基于Struts的J2EE構架的OA,其結構如圖3所示。
系統體系架構采用三層B/W/S模型結構,同時在底層數據整合方面采用統一的接口技術進行底層數據的整合。
采用三層B/W/S結構,形成了數據層、業務管理層、業務表現層3個層次,使得在Web訪問下降低了數據庫服務器的負擔并提高了性能;同時由于在業務管理層實現了業務功能,使得對業務的變化只需調整業務管理層的相關構件,大大提高了系統的可管理性;在系統的安全性方面,三層B/W/S結構也較傳統二層C/S結構有重大的提高,使得對權限的管理上升到業務功能級的控制而不是數據級的控制;另外,三層B/W/S結構更適合在分布式廣域網環境下運行,可以更有效地節約傳輸帶寬。
數據接口層主要是通過本系統和相關業務系統之間的接口以及手工錄入數據方式,完成系統原始數據的采集工作;業務管理層對數據進行映射、變形、匯總、分析等工作,主要包括各種業務規定和邏輯規則;業務呈現層主要是根據客戶前端發出的請求對數據進行相應的處理并呈現,是最終用戶的使用界面,包含本系統的各個子功能模塊,其中所有功能的權限都是由系統管理功能來控制的。
系統采用嚴格的基于Struts的三層架構的分層設計思想、程序處理邏輯與處理程序分離技術,每個邏輯層次都提供相應的基礎功能模塊,使系統條理清晰、性能優化,更具可擴展性和易維護性。
5 功能結構
辦公自動化信息服務系統主要包括:系統管理、綜合辦公管理、工作設置、報表管理和其他系統接口。
系統管理包括用戶管理、系統權限管理、基礎數據設置和系統維護。綜合辦公管理主要負責公司發文、部門通知、公司函件、公司公告,會議管理、檔案管理和日常事務以及車輛管理等。工作設置主要完成個性設置、外出設置等。對于用戶發文、收文、會議通知等問題需要有直觀的統計,通過圖形的方式統計,個人用戶只能查看自己的收發文記錄報表,系統的管理員可以查看所有人的收發文記錄報表。另外還要提供與辦公廳其他應用軟件的接口(如圖4所示)。
6 結 語
本文提出了一個基于Struts的J2EE構架OA的系統模型,給出了該模型的基本框架、實現方案和功能結構特點。
主要參考文獻
[1]楊少波,盧葦.J2EE項目實訓——UML及設計模式 [M].北京:清華大學出版社,2008.
[2]劉曉華,等.J2EE 企業級應用開發 [M].北京:電子工業出版社,2003.
[3]張銳昕.辦公自動化概論[M].北京:清華大學出版社,2004.
[4]曹廣鑫,于謝華,王建鳳. Struts數據庫項目開發寶典[M].北京:電子工業出版社,2006.