摘 要: 研究了高校科研管理系統(tǒng)的現(xiàn)狀,分析了當前流行的JavaEE技術,并利用SSH(Struts+Spring+Hibernate)框架進行系統(tǒng)建模;給出了一個基于SSH的科研管理系統(tǒng)結(jié)構(gòu)圖,詳細分析了該框架結(jié)構(gòu)中的三個層次,即展現(xiàn)層、業(yè)務邏輯層、持久化層。分析了系統(tǒng)的功能結(jié)構(gòu),并結(jié)合不同的用戶權(quán)限描述了每個模塊的功能。總結(jié)了基于SSH的科研管理系統(tǒng)的優(yōu)點。
關鍵詞: 高??蒲泄芾硐到y(tǒng); Struts; Spring; Hibernate
中圖分類號:TP311.1 文獻標志碼:A 文章編號:1006-8228(2013)12-30-02
Design and implementation of research management system in colleges based on SSH
Zhu Erli
(Dept. of Information Technology, Suzhou Institute of Trade and Commerce, Suzhou, Jiangsu 215009, China)
Abstract: The current situation of the research management system in colleges is researched. The current popular JavaEE technology is analyzed and SSH framework for system modeling is used. A system structure diagram based on SSH is given, and three levels of the framework structure are analyzed, namely the presentation layer, business layer, data source layer. The function of the system combined with the different user permissions is discussed to explain these modules. Finally, the advantages of the system based on SSH are summarized.
Key words: research management system in colleges; Struts; Spring; Hibernate
0 引言
高校的科研工作越來越受到重視,為了發(fā)揮教師開展科研工作的潛能,進而促進教育教學水平的提高,許多高校都投入了大量的資金立項,鼓勵教師進行科學研究。高校科技產(chǎn)業(yè)處負責統(tǒng)籌管理高校的科學研究工作,其首要工作就是組織好科研項目的申報工作。目前高校教師申請的科研項目種類多、數(shù)量多,所涉及的學科專業(yè)復雜,整個申報和管理過程基本都已經(jīng)借助于計算機進行輔助管理。但是,尚未實現(xiàn)真正意義上的網(wǎng)上申報,且大部分數(shù)據(jù)處理工作仍依靠人工完成。如申請項目時需要填寫紙質(zhì)的申請書,申請效率不高;科技產(chǎn)業(yè)處在數(shù)據(jù)錄入、項目審核、保存、統(tǒng)計、查詢過程中也以手工操作為主,數(shù)據(jù)準確性不高;紙質(zhì)存檔材料一旦損壞或丟失,不能挽救。這種傳統(tǒng)的管理方式已經(jīng)嚴重制約了科研工作的發(fā)展步伐。因而,提高科研管理的效率和水平,使科研管理工作更加科學化和規(guī)范化,加強科研申報工作信息化建設勢在必行。
1 相關技術介紹
科研項目的申報工作應該充分利用現(xiàn)代信息技術,將申報工作放到計算機和網(wǎng)絡這個快捷平臺上來完成。本科研管理系統(tǒng)采用當前流行的B/S結(jié)構(gòu),使用JSP編程語言,基于Java EE的三種框架進行集成開發(fā),包括Struts2框架、Spring框架、Hibernate框架,它們在整個系統(tǒng)的開發(fā)過程中起著不同的作用;同時結(jié)合Dreamwaver網(wǎng)頁制作技術,采用SQL Server構(gòu)建后臺數(shù)據(jù)庫,使用Apache的Tomcat服務器作為Web服務器。
Struts2是Struts的下一代產(chǎn)品,是在 Struts1和WebWork的技術基礎上進行了合并,得到全新的Struts 2框架。Struts2框架中核心組件就是Action、攔截器等,Struts2框架使用包來管理Action和攔截器等。在系統(tǒng)設計中,采用Struts2攔截器的機制來處理用戶的請求,這樣的設計使得業(yè)務邏輯控制器與Servlet API完全脫離開。
Hibernate是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲地使用對象編程思維來操縱數(shù)據(jù)庫。
Spring是一個開源框架,是為了解決企業(yè)應用程序開發(fā)復雜性而創(chuàng)建的。該框架可以方便解耦,簡化開發(fā)。通過Spring提供的IoC容器,我們可以將對象之間的依賴關系交由Spring進行控制,避免硬編碼所造成的過度程序耦合。有了Spring,用戶不必再為單實例模式類、屬性文件解析等這些很底層的需求編寫代碼,可以更專注于上層的應用。
科研管理系統(tǒng)的前端采用Struts2框架,后臺采用Hibernate對數(shù)據(jù)庫進行各種操作,中間層采用Spring,三種框架的結(jié)合能夠很好地實現(xiàn)科研管理系統(tǒng)的設計,使得模型層、展現(xiàn)層、控制層得以分離,降低了系統(tǒng)的耦合度。
2 系統(tǒng)結(jié)構(gòu)
本系統(tǒng)可以滿足普通教師科研項目申報的需求,滿足系部管理者對本系部科研項目初審的需要,同時也可以滿足科技產(chǎn)業(yè)處領導對科研項目的宏觀管理與決策的需要。因此該系統(tǒng)有助于實現(xiàn)科研管理的信息化,對提高管理工作的效率和水平,促進科研管理決策科學化,促進成果轉(zhuǎn)化、實現(xiàn)科研管理創(chuàng)新等具有重要意義[1]。
科研項目申報系統(tǒng)是以科研項目的申報和管理流程為核心,依托校園網(wǎng)現(xiàn)有資源,全方位通過計算機和網(wǎng)絡來管理科研項目,以達到方便、高效地管理和控制,提高管理效能。該項目主要實現(xiàn):對項目的管理;對科研信息的查詢;全方位的科研管理服務,為學校科研管理業(yè)務提供信息化支持;輔助科研負責人或科研管理者管理相應的科研工作,及時掌握、了解學院教師的科研申報情況,方便且高效地完成科研管理工作。該科研管理系統(tǒng)的結(jié)構(gòu)如圖1所示[2]。
[展現(xiàn)層\Struts2\配置文件
模板頁面\][業(yè)務邏輯層\Spring\Ioc容器,
Hibernate的支持\][持久化層\Hibernate\映射文件,Hibernate接口,DAO模式\]
圖1 系統(tǒng)結(jié)構(gòu)圖
2.1 展現(xiàn)層
展現(xiàn)層借助于Struts框架來實現(xiàn)MVC模型中的視圖和控制部分,視圖部分即用戶所看到的實際頁面,登錄頁面、申報頁面、審核頁面等,用JSP實現(xiàn)。該層不存在邏輯處理部分的代碼,它只是用戶與管理系統(tǒng)進行交互的界面,主要作用是接受瀏覽器請求并接收客戶端信息,然后通過控制器去查找對應的請求,并把請求發(fā)到與之對應的Action,再在Action中調(diào)用業(yè)務邏輯處理程序進行處理,最后將最終處理結(jié)果返回給用戶。
2.2 業(yè)務邏輯層
業(yè)務邏輯層作為中間層,利用Spring框架實現(xiàn)。該層是整個系統(tǒng)的核心。主要包括各個應用模塊的業(yè)務處理類。具體可分為用戶管理模塊,普通教師申報模塊,系部管理模塊,科技產(chǎn)業(yè)處管理模塊,公共查詢模塊等幾個大模塊。Spring是業(yè)務邏輯層的容器,在此利用了Spring的Ioc機制(控制反轉(zhuǎn)和依賴注入)??刂品崔D(zhuǎn)就是由容器控制程序之間的(依賴)關系,而非傳統(tǒng)實現(xiàn)中,由程序代碼直接操控。依賴注入是指組件之間的依賴關系由容器在運行期決定,由容器動態(tài)的將某種依賴關系注入到組件之中。Spring容器控制所有Action對象和業(yè)務邏輯類的生命周期,由于上層不再控制下層的生命周期,層與層之間實現(xiàn)了完全脫耦,使程序運行起來效率更高,也方便維護。
2.3 持久化層
科研管理系統(tǒng)需要經(jīng)常性甚至是不斷地訪問數(shù)據(jù)庫,比如:讀取申報信息,添加審核信息,修改項目信息,刪除用戶信息等。系統(tǒng)采用Hibernate的對象化映射與數(shù)據(jù)庫進行交互。Hibernate技術作為一個提供數(shù)據(jù)庫服務的中間件,可以和多種Web服務器或者應用服務器良好集成,該技術不僅提供了從Java類到數(shù)據(jù)表之間的映射,也提供了數(shù)據(jù)查詢和恢復機制。相對于使用JDBC和SQL來手工操作數(shù)據(jù)庫,Hibernate可以大大減少操作數(shù)據(jù)庫的工作量。
3 功能結(jié)構(gòu)
[科研管理系統(tǒng)][用戶管理模塊][普通教師申報模塊][系部管理模塊][科產(chǎn)處管理模塊][公共查詢模塊]
圖2 系統(tǒng)功能結(jié)構(gòu)圖
從模塊功能的角度分析,本系統(tǒng)主要分為五大模塊:用戶管理模塊,普通教師申報模塊,系部管理模塊,科技產(chǎn)業(yè)處管理模塊,公共查詢模塊,如圖2所示。不同用戶登錄系統(tǒng),有不同的功能權(quán)限。用戶可分為四個級別:普通教師級別用戶、系部級別用戶、科技產(chǎn)業(yè)處級別用戶(最高級別用戶)、管理員級別用戶。普通教師級別用戶對“普通教師申報模塊”具備操作權(quán)限;系部級別用戶對“系部管理模塊”具備操作權(quán)限;科技產(chǎn)業(yè)處級別用戶對“科產(chǎn)處管理模塊”具備操作權(quán)限;管理員級別用戶對“用戶管理模塊”具備操作權(quán)限;所有級別的用戶都具有對應的查詢模塊[3-4]。
⑴ 申請項目的教師通過注冊可以成為一個普通教師級別的用戶,該用戶擁有科研項目的申報、科研項目申請書的下載和上傳、科研項目協(xié)議書的下載和上傳、個人用戶信息的管理、個人科研項目的管理(添加、刪除、修改)等權(quán)限。
⑵ 科技產(chǎn)業(yè)處級別的用戶屬于最高級別的用戶,擁有所有用戶信息的管理(添加、刪除、修改)、全院科研項目的審批、科研項目的管理(添加、刪除、修改)、科研項目的結(jié)題、科研項目信息的查詢、統(tǒng)計、下載等諸多權(quán)限。
⑶ 系部級別的用戶為各個系部管理者所設,該用戶擁有系部科研項目的初審、系部科研項目列表的查詢等權(quán)限。
⑷ 管理員級別用戶負責數(shù)據(jù)管理和數(shù)據(jù)維護[5]。
4 結(jié)束語
本科研管理系統(tǒng)采用SSH架構(gòu)設計實現(xiàn),視圖層、業(yè)務邏輯層、持久化層,層次分明,可以簡化系統(tǒng)開發(fā)流程,降低模塊間的耦合性,提高系統(tǒng)的健壯性。在高校中采用該系統(tǒng),可以幫助高校建立科研管理數(shù)據(jù)庫和信息溝通平臺,提高教師申報科研項目的效率,幫助科技產(chǎn)業(yè)處高效安全的審核、保存、處理、統(tǒng)計這些申報信息,使科技管理工作更加規(guī)范化、科學化,使得信息的發(fā)布、資料的下載、項目的申報和審核等環(huán)節(jié)網(wǎng)絡化、公開化、透明化,使得信息交流更加方便、快捷,從而將科研管理工作者從繁雜的事務性工作中解放出來,使他們可以把主要精力放在對管理信息的科學統(tǒng)計分析、項目的申報、管理等科研決策上來。在未來,基于SSH框架的科研管理系統(tǒng)將成為高??蒲泄芾硐到y(tǒng)發(fā)展的必然趨勢。
參考文獻:
[1] 胡金成,劉亞彬,陳琳.高校科研管理系統(tǒng)分析與設計[J].電腦知識與
技術,2012.8(27):6642-6244
[2] 李雷孝,劉曉軍,劉利民,包力.基于SSH整合框架的科研項目管理系
統(tǒng)的設計與實現(xiàn)[J].內(nèi)蒙古農(nóng)業(yè)大學學報,2012.33(2):210-214
[3] 王居柱,侯彤璞,孫明柱.基于Struts-Hibernate架構(gòu)的權(quán)限管理系統(tǒng)
的設計與實現(xiàn)[J].計算機與數(shù)字工程,2011.39(4):101-105
[4] 劉敏,李智彪,廖春華.基于Struts+Hibernate架構(gòu)的考核系統(tǒng)設計與
實現(xiàn)[J].計算機與現(xiàn)代化,2009.3(11):89-91
[5] 劉鵬遠.一種角色權(quán)限管理方案的算法設計[J].計算機系統(tǒng)應用,
2010.19(10):228-232