【摘要】辦公自動化系統(tǒng)近年來走入人們的生產生活之中,并逐步在現代企業(yè)中占據很重要的位置,進而提高企業(yè)的辦事效率,節(jié)約人力資源,改進辦公質量。本文提出一種采用JAVA平臺中的SSH框架實現的辦公自動化系統(tǒng)的方案,該方案使得整個系統(tǒng)模塊劃分清晰,從而方便企業(yè)內部人員進行有效的信息溝通,并取得了很好的效果。
【關鍵詞】Struts2;Hibernate;辦公自動化
1.介紹
目前,我們處于一個信息化和大數據的時代,各行各業(yè)都需要對大量信息進行處理。在日常辦公中,人們開始面對越來越多的復雜與繁冗的數據,傳統(tǒng)的辦公方式逐漸無法滿足人類和社會發(fā)展的需求。計算機技術的迅猛發(fā)展,使其在辦公室中的應用越來越廣泛,辦公自動化開始成為主流的辦公方式。國務院電子振興辦辦公自動化專家會議對辦公自動化作了如下定義:辦公自動化是利用先進的科學技術,不斷使人的辦公業(yè)務活動物化于人以外的各種設備中,并由這些設備與辦公室人員構成服務于某種目標的人機信息處理系統(tǒng)。如今,辦公自動化系統(tǒng)已經逐漸進入各個行業(yè),其便利的信息交流方式,較高的辦公工作效率受到了人們的歡迎[1]。
2.系統(tǒng)設計
2.1 系統(tǒng)目標
本文從辦公自動化系統(tǒng)的基礎要求出發(fā),將辦公的方便性和高效性考慮入內,達到降低系統(tǒng)的耦合性的目標,并實現OA辦公自動化系統(tǒng)的主要功能模塊的操作。這樣可以保證系統(tǒng)實現后的高效性、高擴展性和靈活性,達到協(xié)助工作人員處理日常工作的目標,從而減少了管理的繁瑣,實現辦公自動化和信息化。
系統(tǒng)采用BS構架模式并結合時下最流行的SSH框架,利用因特網信息交流的方便性與高效性,合理設計與規(guī)劃,最終實現員工信息管理、在線交流信息管理、個人公開文件夾管理、會議安排管理等典型辦公自動化功能。
2.2 相關框架介紹
1)Struts2框架介紹:Struts2框架是在Struts1和WebWork技術基礎上進行合并而產生的。Struts2以WebWork為核心,采用攔截器的機制實現用戶的請求。其主要分為模型、視圖和控制器三部分(即MVC),主要的設計理念是通過控制器解除表現邏輯和業(yè)務邏輯的耦合性,以提高系統(tǒng)的可維護性、可擴展性和重用性。
2)Hibernate框架介紹:Hibernate是一個開源的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,方便開發(fā)人員開發(fā),使其可以隨心所欲的使用對象編程思維來操縱數據庫,從而提高開發(fā)效率[2]。Hibernate的HQL查詢數據語言是根據SQL面向對象的最小的擴展來設計的,在對象和關系領域間提供了一個交互的橋。
3)Spring框架介紹:spring是為了解決應用程序開發(fā)復雜性而創(chuàng)建的一個開源框架。其主要優(yōu)勢之一是分層架構,分層架構方便開發(fā)者選擇組件。Spring提供了面向切面編程的豐富支持,允許通過分離應用的業(yè)務邏輯和系統(tǒng)級服務進行內聚性開發(fā)。其簡單性、可測試性和松耦合性使得應用程序受益。
2.3 功能模塊劃分
經過我們對辦公單位實際情況考察并認真分析后,本系統(tǒng)包括的用戶有普通員工、部門領導和系統(tǒng)管理員三個角色,其分別具有不同的權限。普通員工具有個人信息的修改功能,可以查看部門通訊錄,管理個人在線信息,并可以查看個人日程安排和委托他人事項。部門領導不僅具有普通員工所有功能,還可以安排會議,查看會議記錄,并安排所在部門員工的待辦事項。系統(tǒng)管理員的權限最高,主要負責管理通知通告,具有對部門信息、員工信息和角色信息的增刪查改的功能。該OA辦公自動化系統(tǒng)功能體系結構如圖2.1所示:
2.4 數據庫設計
OA辦公自動化系統(tǒng)的設計離不開數據庫的設計,而該系統(tǒng)在設計過程中遇到的主要難點也是數據庫設計。數據庫的設計在整個系統(tǒng)設計過程當中扮演著舉足輕重的角色,一個好的數據庫能對系統(tǒng)的實現起到事半功倍的作用。系統(tǒng)在數據庫設計中需要充分考慮數據之間聯系,保證數據庫設計的規(guī)范化,從而在系統(tǒng)實現和之后的維護過程中不會發(fā)生插入、刪除和更新異常,使得后續(xù)工作高效的進行。本系統(tǒng)主要數據表列舉如下:
該系統(tǒng)數據庫管理系統(tǒng)采用MySQL,其開源性、多線程性和健壯性深受人們的歡迎[3]。數據庫部署于后臺服務器中,只有系統(tǒng)管理人員才能通過一定的認證訪問數據庫表中的數據。除此以外,系統(tǒng)不提供任何訪問數據庫的接口。
3.系統(tǒng)實現
3.1 關鍵模塊實現
在OA辦公自動化系統(tǒng)實現過程中,在線信息和工作安排兩個模塊相對于其它較為復雜,同時也耗費了大量的精力和時間。在此將這兩個模塊的實現過程詳細介紹如下:
a)在線信息管理
在線信息模塊相對復雜主要是因為在系統(tǒng)的首頁需要動態(tài)地顯示用戶的未讀信息數目,需要用到局部動態(tài)刷新技術——Ajax技術[4]。同時,用戶對在線信息模塊的增、刪、查、改操作相對于其它模塊也更多,因此對我們的數據庫設計提出了更高的要求,這也增加了該模塊的復雜度。在數據庫表的設計過程中,難度主要集中在對于已讀信息、未讀信息、已發(fā)信息、草稿等的表示和狀態(tài)轉換的設計,需要設計人員極大的耐心。
b)工作安排管理
工作安排管理模塊涉及到員工之間相互指定待辦事項,而該功能又需得到相互間的授權,使其業(yè)務邏輯較為復雜。同時,待辦事項的狀態(tài)最終會從未完成轉換為已完成,這也增加了該模塊的難度。
授權的業(yè)務流程也較為復雜,例如員工A想向員工B指定代辦任務,員工A必須首先得到員工B的授權。與此同時,在得到B的授權后,A可以向B指定代辦任務,B也可隨時解除授權。因此,在設計該模塊的數據庫表時需要考慮復雜的邏輯關系,對數據庫的設計能力提出了很高的要求。此處涉及到了user表、authorization表以及assignment表大量的增、刪、查、改的操作,工作量較大。
3.2 技術難點
在文件管理功能模塊中,維護與管理文件上傳和下載相對于其它操作較為復雜,下載模塊需要進行較為復雜的struts配置,同時上傳和下載時還要進行編碼轉換。
針對文件夾/文件的操作主要是增加文件夾、上傳文件、更改文件名、刪除文件/文件夾、分享文件夾、獲得全部文件夾。這部分的難度主要集中在SQL語句,需要有足夠耐心和細心。
對于上傳文件這塊,其struts的配置文件相對簡單。而文件下載模塊struts比較復雜,其主要配置文件如下:
application/octet-stream;charset=utf-8
此處將下載文件contentType統(tǒng)一指定為application/octet-stream,同時將charset的值設置為utf-8
attachment;filename=”${name}”
attachment是告訴瀏覽器下載該文件,而filename則是在action中接收該文件的文件名,以便在用戶保存該文件時使用該文件名。
文件下載模塊的action部分,其主要步驟如下:
1)定義所需的變量;
2)創(chuàng)建需要下載的文件
File file=new File(“保存文件的路徑\"+dowFileName)
3)將下載的字節(jié)流寫入剛剛創(chuàng)建的文件
try{
//從file文件中獲得輸入字節(jié)流
fdlInputStream=new FileInput-Stream(file);
//下載時指定的文件名字用iso8859 -1編碼
name=new String(dowFileName.getBytes(),\"iso8859-1\");
}
catch(FileNotFoundException e){
System.out.println(“指定文件找不到”);
e.printStackTrace();“
}
文件上傳模塊action部分,主要步驟如下:
1)聲明所需的變量,其中許多變量是固定名稱;
2)創(chuàng)建新的文件,保存上傳的文件
File fileTo=new File(\"上傳文件的保存路徑\"+uploadFileName);
3)將頁面接收到的文件寫入剛剛創(chuàng)建的文件中去
TestCopy.copy(upload,fileTo)
4.結束語
本文結合現代辦公需求,依賴當今流行的SSH框架整合技術,具有良好的分層體系,使得該系統(tǒng)具有良好的擴展性,可維護性和穩(wěn)定性。經過后期的內部測試,該系統(tǒng)很大程度上提高了辦公效率,節(jié)約了成本和資源,其高效數據處理能力在一定程度推進了企業(yè)資源計劃(ERP)的實現,值得繼續(xù)推廣和使用。
參考文獻
[1]孫敏.辦公自動化[M].北京:北京理工大學出版社,2010.
[2]李剛.輕量級JavaEE企業(yè)應用實戰(zhàn)(第3版)-Struts2 +Spring3+Hibernate整合開發(fā)[M].北京:電子工業(yè)出版社,2012.
[3]周靖,許青松譯.Leon Atkinson.MySQL核心編程:高級開發(fā)者者指南[M].北京:清華大學出版社,2003.
[4]王莉軍.在Web2.0設計模式下利用Ajax技術實現網頁數據動態(tài)更新[J].渤海大學學報(自然科學版),2008,3:29.
作者簡介:
王亦寧(1990—),男,山西太原人,大學本科,現就讀于四川大學軟件學院軟件工程專業(yè)。
王小天(1991—),男,四川巴中人,大學本科,現就讀于四川大學軟件學院軟件工程專業(yè)。