前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的秘書(shū)績(jī)效考核報(bào)告主題范文,僅供參考,歡迎閱讀并收藏。
關(guān)鍵詞:科研管理;MVC;SSH框架
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)11-2485-03
Abstract: In order to achieve the teaching and research management of information technology, combined with the actual situation of the North China Institute of Science and Technology research management, This paper reports the realization of the whole system bu constructing SSH framework based on MVC mode and in combination of using other technologies such as Ajax. The system can review the teacher’s academic achievements, such as research papers, monographs, patents, software, etc. and completes the whole process management of scientific research project.
Key words: research management; MVC; SSH
高??蒲泄ぷ髯鳛楦叩仍盒3瞬排囵B(yǎng)之外的一項(xiàng)基本工作,是推動(dòng)社會(huì)進(jìn)步、解決各行業(yè)關(guān)鍵技術(shù)和突出問(wèn)題的主要?jiǎng)恿?。高校的科研活?dòng)和能力已成為衡量一所高校綜合實(shí)力的重要指標(biāo)[1]。隨著國(guó)家、各級(jí)部門、高校自身對(duì)科學(xué)研究活動(dòng)的重視及資金投入的不斷增加,高校各級(jí)、各類科研項(xiàng)目的數(shù)量、質(zhì)量、規(guī)模在逐步提升;科研人員逐步增多,幾乎所有的高校教師都是科研項(xiàng)目的參與者;同時(shí),所取得的科研成果的種類、數(shù)量也在逐年增多。由此,日??蒲泄芾砣蝿?wù)逐年加重,科研業(yè)務(wù)管理人員以及科研人員重復(fù)性勞動(dòng)增多,工作效率低下;科研活動(dòng)所產(chǎn)生的信息資源無(wú)法高效、安全保存并共享,不能為學(xué)??蒲泄芾頉Q策者提供依據(jù)。面對(duì)以上問(wèn)題和挑戰(zhàn),基于先進(jìn)的計(jì)算機(jī)網(wǎng)絡(luò)、數(shù)據(jù)庫(kù)技術(shù),建立一個(gè)符合自身工作流程和需求變化的,同時(shí)具有很強(qiáng)的可擴(kuò)充性、可靠性和可維護(hù)性的科研管理信息系統(tǒng)是各高校的迫切要求[2] [3]。
基于MVC模式的SSH(Strut、Spring和Hibernate)框架是一種輕量級(jí)的應(yīng)用系統(tǒng)解決方案?;谠摷軜?gòu)的WEB應(yīng)用系統(tǒng),功能強(qiáng)大,開(kāi)發(fā)效率高,系統(tǒng)安全性、穩(wěn)定性、可擴(kuò)展性強(qiáng)。該文以華北科技學(xué)院科研管理系統(tǒng)的開(kāi)發(fā)為例,闡述了應(yīng)用 SSH框架建立高??蒲泄芾硐到y(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)方法。
1 系統(tǒng)架構(gòu)
1.1 MVC設(shè)計(jì)模式
MVC(Model-View-Controller)是一種基于模型視圖控制器的軟件設(shè)計(jì)模式,在MVC模式下,模型是應(yīng)用程序的核心,代表應(yīng)用程序的業(yè)務(wù)邏輯,它包含要完成任務(wù)需要的全部數(shù)據(jù)和行為,并能夠把要顯示的數(shù)據(jù)提供給視圖。視圖是應(yīng)用程序的外在表現(xiàn),用戶與之交互的界面,用戶可以看到??刂破饔糜谔幚碛脩糨斎耄⒇?fù)責(zé)將模型映射到視圖中 [4]。傳統(tǒng)的WEB開(kāi)發(fā)模式將數(shù)據(jù)處理功能和網(wǎng)頁(yè)頁(yè)面顯示等功能耦合于頁(yè)面代碼中,因此,其系統(tǒng)耦合度高,維護(hù)性和可擴(kuò)展性差,MVC成功的解決了此問(wèn)題,已被越來(lái)越多的開(kāi)發(fā)者所推崇,成為了成熟、優(yōu)秀的設(shè)計(jì)模式。
1.2 SSH框架
SSH是目前擁有最廣泛應(yīng)用的 J2EE 架構(gòu),是 Struts+Spring+Hibernate 3 種技術(shù)的有機(jī)融合 [5]。
Struts 是基于 MVC 的框架,充當(dāng)控制器的角色,負(fù)責(zé)接收用戶輸入、調(diào)用服務(wù)層的方法后將結(jié)果返回?cái)?shù)據(jù)表現(xiàn)層。Struts中的核心控制器是ActionServlet類,它負(fù)責(zé)攔截來(lái)自用戶的請(qǐng)求,并將其發(fā)送給Action類,此時(shí), Action類將調(diào)用模型的業(yè)務(wù)邏輯方法來(lái)處理該請(qǐng)求,并最終將處理結(jié)果返給JSP頁(yè)面顯示。
Hibernate在程序中充當(dāng)模型的角色,利用XML 文件,它能夠?qū)?shù)據(jù)庫(kù)的字段和實(shí)體類字段之間的關(guān)系對(duì)應(yīng)起來(lái),使關(guān)系數(shù)據(jù)庫(kù)中的數(shù)據(jù)在程序中直接變?yōu)槌绦蛑械膶?duì)象。同時(shí),Hibernate 還提供了強(qiáng)大功能的事務(wù)管理和緩存機(jī)制??蒲泄芾硇畔⑾到y(tǒng)的業(yè)務(wù)邏輯層通過(guò) Hibernate 的緩存訪問(wèn)數(shù)據(jù)可以提高程序的處理速度,減少數(shù)據(jù)庫(kù)的開(kāi)銷。
Spring在其中充當(dāng)了裝配工廠的角色,它通過(guò) XML 配置文件將各子層的實(shí)例組織起來(lái),并將各子層間的依賴關(guān)系集中表現(xiàn)在配置文檔中,使系統(tǒng)的結(jié)構(gòu)更加清晰、合理。
1.3 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)
本系統(tǒng)運(yùn)用 MVC 模式,基于 SSH 框架,將輸入、核心處理、輸出流程按照模型、視圖、控制的方式進(jìn)行分離,分為客戶層、EJB層、數(shù)據(jù)訪問(wèn)層3個(gè)層次客戶層處理與用戶的交互,運(yùn)行在客戶端的瀏覽器中。EJB層主要用于實(shí)現(xiàn)核心業(yè)務(wù)邏輯與規(guī)則化處理,完成科研數(shù)據(jù)查詢和更新業(yè)務(wù)、用戶權(quán)限判定等。EJB層功能主要由其組件完成,Servlet用于實(shí)現(xiàn)控制邏輯,負(fù)責(zé)處理Http請(qǐng)求;實(shí)體Bean組件實(shí)現(xiàn)業(yè)務(wù)邏輯,并訪問(wèn)數(shù)據(jù)庫(kù)。當(dāng)客戶層將請(qǐng)求傳遞給EJB層時(shí),控制Servlet首先檢驗(yàn)其數(shù)據(jù)的合法性并進(jìn)行格式轉(zhuǎn)換,然后調(diào)用實(shí)體Bean組件進(jìn)行業(yè)務(wù)邏輯處理,并訪問(wèn)數(shù)據(jù)庫(kù)。 最后通過(guò) JSP頁(yè)面將處理的結(jié)果反饋到客戶端。通過(guò)以上的各類邏輯處理決定操作是否可以繼續(xù),確保科研管理系統(tǒng)的正常運(yùn)行。
數(shù)據(jù)訪問(wèn)層采用通用的關(guān)系型數(shù)據(jù)庫(kù)管理科研信息平臺(tái)。EJB層中的實(shí)體Bean組件通過(guò)JDBC連接數(shù)據(jù)庫(kù),并與系統(tǒng)進(jìn)行信息交互,完成核心存儲(chǔ)庫(kù)的數(shù)據(jù)訪問(wèn)和邏輯存取。 數(shù)據(jù)訪問(wèn)層與EJB層間JDBC靈活機(jī)制的增加,使整個(gè)科研管理系統(tǒng)具有好的可重用性和較強(qiáng)的跨平臺(tái)操作性。
2 系統(tǒng)功能模塊設(shè)計(jì)
高??蒲泄芾淼臉I(yè)務(wù)主要涉及學(xué)術(shù)論文、教材(論著)、專利、軟件等教師科研學(xué)術(shù)成果的認(rèn)定,包括其成果級(jí)別及獎(jiǎng)勵(lì)的認(rèn)定;校內(nèi)基金課題的全過(guò)程管理,其他國(guó)家、省部級(jí)縱向課題及橫向課題的管理;科研工作量審核等。在參照華北科技學(xué)院有關(guān)科研項(xiàng)目與成果管理的規(guī)章制度,以及學(xué)校自身科研項(xiàng)目與成果管理的內(nèi)容、工作流程基礎(chǔ)上,將系統(tǒng)劃分為如下業(yè)務(wù)模塊:學(xué)術(shù)論文、教材、專利、軟件等學(xué)術(shù)成果管理模塊,科研項(xiàng)目管理模塊,數(shù)據(jù)查詢與統(tǒng)計(jì)模塊,系統(tǒng)控制模塊2.1 學(xué)術(shù)成果管理模塊
該模塊主要用于科研教師論文、教材著作、專利、軟件等學(xué)術(shù)成果的審核及獎(jiǎng)勵(lì)標(biāo)準(zhǔn)的核定。教師可以將自己的學(xué)術(shù)成果信息以及成果獲獎(jiǎng)或被引用檢索的相關(guān)佐證材料,按要求填寫(xiě)上報(bào)??蒲刑幑芾韱T對(duì)教師新錄入的學(xué)術(shù)成果進(jìn)行審核或刪除操作,同時(shí)進(jìn)行獎(jiǎng)勵(lì)標(biāo)準(zhǔn)的核定。
2.2 科研項(xiàng)目管理模塊
該模塊實(shí)現(xiàn)科研教師縱向、橫向、校內(nèi)基金項(xiàng)目的全過(guò)程管理與監(jiān)督,以及科研成果獎(jiǎng)勵(lì)的核定。包括縱向項(xiàng)目管理、校內(nèi)基金項(xiàng)目管理、橫向項(xiàng)目管理以及科研項(xiàng)目成果獎(jiǎng)勵(lì)管理四個(gè)子模塊。
縱向、橫向項(xiàng)目管理子模塊:科研項(xiàng)目負(fù)責(zé)人可對(duì)錄入項(xiàng)目相關(guān)信息,上傳橫向項(xiàng)目免稅申請(qǐng)書(shū)、績(jī)效考核報(bào)告、中期檢查報(bào)告、結(jié)題報(bào)告等項(xiàng)目實(shí)施過(guò)程中的各種文件及成果??蒲泄芾砣藛T可設(shè)置項(xiàng)目績(jī)效考核、中期檢查、結(jié)題等提醒時(shí)間,對(duì)橫向項(xiàng)目免稅申請(qǐng)進(jìn)行審核。檢查、監(jiān)控項(xiàng)目的實(shí)施情況。
校內(nèi)基金項(xiàng)目管理子模塊:實(shí)現(xiàn)科研項(xiàng)目立項(xiàng)申請(qǐng)、中期檢查、結(jié)題、評(píng)獎(jiǎng)等全過(guò)程管理??蒲薪處熆蓪?duì)項(xiàng)目名稱、所屬單位、參加人員及排名、指出經(jīng)費(fèi)的信息的進(jìn)行錄入,可上傳項(xiàng)目申請(qǐng)書(shū)、立項(xiàng)合同書(shū)、中期檢查報(bào)告、結(jié)題申請(qǐng)書(shū)、結(jié)題材料,可隨時(shí)查看項(xiàng)目申請(qǐng)狀態(tài)、中期檢查狀態(tài)等??蒲泄芾韱T可以對(duì)項(xiàng)目申請(qǐng)進(jìn)行審核、送審、評(píng)審意見(jiàn)匯總,可以對(duì)中期檢查報(bào)告、結(jié)題材料進(jìn)行審核。評(píng)審專家可以對(duì)申請(qǐng)書(shū)進(jìn)行評(píng)審,并填寫(xiě)評(píng)審意見(jiàn)。
科研成果獎(jiǎng)勵(lì)管理子模塊:科研教師可錄入和上傳科研項(xiàng)目成果獎(jiǎng)的相關(guān)信息及佐證材料??蒲泄芾砣藛T可對(duì)新錄入的科研項(xiàng)目成果獎(jiǎng)進(jìn)行審核或刪除操作。
2.3 數(shù)據(jù)查詢與統(tǒng)計(jì)模塊
該模塊實(shí)現(xiàn)對(duì)全??蒲薪處熕袑W(xué)術(shù)成果及獎(jiǎng)勵(lì)的多元化、精細(xì)化綜合查詢與統(tǒng)計(jì),滿足教師、教學(xué)秘書(shū)、科研管理人員等不同用戶,以及教育部、河北省教育廳、國(guó)家安全生產(chǎn)總局、學(xué)校等各級(jí)部門數(shù)據(jù)查詢統(tǒng)計(jì)需求,打印相應(yīng)的統(tǒng)計(jì)報(bào)表。
2.4 系統(tǒng)控制模塊
該模塊主要用于管理員進(jìn)行系統(tǒng)配置管理、用戶管理以及其他各功能模塊中需要系統(tǒng)管理員自定義項(xiàng)的設(shè)置。如系統(tǒng)用戶的創(chuàng)建及其權(quán)限的定義,用戶所屬單位、學(xué)科、期刊名、會(huì)議名、期刊級(jí)別等的自定義設(shè)置。
3 系統(tǒng)關(guān)鍵技術(shù)實(shí)現(xiàn)
3.1 異步數(shù)據(jù)訪問(wèn)
為加快系統(tǒng)頁(yè)面更新速度,使用戶有一種實(shí)時(shí)響應(yīng)的體驗(yàn),通過(guò)在系統(tǒng)客戶端增加Ajax引擎,實(shí)現(xiàn)客戶端和用戶數(shù)據(jù)異步訪問(wèn)。當(dāng)用戶打開(kāi)一個(gè)Web頁(yè)面是,就載入Ajax引擎。Ajax引擎初始化后,開(kāi)始初始化XMLHttpRequest對(duì)象,捕捉用戶行為,開(kāi)始于用戶的交互。當(dāng)用戶的某些請(qǐng)求出發(fā)Ajax是,Ajax在后臺(tái)將用戶的數(shù)據(jù)異步請(qǐng)求送到控制器ActionServlet處理。3.2 系統(tǒng)安全性
科研管理系統(tǒng)安全性主要是數(shù)據(jù)安全問(wèn)題,包括用戶登錄信息,學(xué)術(shù)成果及科研項(xiàng)目信息安全等。為避免非法用戶任意篡改數(shù)據(jù),系統(tǒng)在接收到數(shù)據(jù)修改、刪除請(qǐng)求時(shí),首先要判斷發(fā)出該請(qǐng)求的用戶是否具有相應(yīng)的權(quán)限。由于用戶權(quán)限數(shù)據(jù)存放于數(shù)據(jù)庫(kù)中,同時(shí)用戶更新數(shù)據(jù)的頁(yè)面通常是連續(xù)的,如果每接收一次數(shù)據(jù)更新請(qǐng)求就查詢一次數(shù)據(jù)庫(kù),系統(tǒng)的效率就會(huì)很低。因此,為了提高系統(tǒng)效率,系統(tǒng)采用了JSP 的 Session 對(duì)象。當(dāng)用戶首次訪問(wèn)服務(wù)器上的一個(gè)頁(yè)面時(shí),JSP引擎就會(huì)生成一個(gè) Session 對(duì)象,該 Session 對(duì)象即調(diào)用相應(yīng)的方法,存儲(chǔ)該客戶訪問(wèn)各個(gè)頁(yè)面期間提交的各種信息,如姓名、密碼等。該 Session 對(duì)象會(huì)被分配一個(gè)的DI號(hào)(String 類型),根據(jù)這個(gè) ID 號(hào) JPS引擎與用戶間就建立了一一對(duì)應(yīng)關(guān)系。這樣,系統(tǒng)在判定某用戶權(quán)限時(shí),只需訪問(wèn)一次數(shù)據(jù)庫(kù),將一些有用的信息存儲(chǔ)在 Session 中,以后系統(tǒng)在執(zhí)行用戶請(qǐng)求時(shí),可直接訪問(wèn) Session 中存放的信息,由此,避免了反復(fù)訪問(wèn)后臺(tái)數(shù)據(jù),系統(tǒng)運(yùn)行效率得到了提高。
4 結(jié)束語(yǔ)
本文結(jié)合華北科技學(xué)院科研項(xiàng)目及學(xué)術(shù)成果管理內(nèi)容、工作流程,采用基于 J2EE的 MVC 模式,利用 Struts、Spring 和 Hibernate 的整合架構(gòu)設(shè)計(jì)和實(shí)現(xiàn)了一個(gè)基于 Web 的高校科研管理信息系統(tǒng)。系統(tǒng)功能簡(jiǎn)捷、實(shí)用,同時(shí)考慮到將來(lái)科研管理理念的變遷和管理模式的變革,系統(tǒng)預(yù)留了一定數(shù)量的接口用于系統(tǒng)功能擴(kuò)充,保證了系統(tǒng)的可擴(kuò)展性??蒲泄芾硇畔⑾到y(tǒng)的實(shí)施大大提高了科研教師及管理部門的效率,實(shí)現(xiàn)了學(xué)??蒲泄ぷ髁鞒袒⒁?guī)范化管理。
參考文獻(xiàn):
[1] 許博.基于.NET三層架構(gòu)的科研管理系統(tǒng)的開(kāi)發(fā)與應(yīng)用[J].實(shí)驗(yàn)室研究與探索,2013(2):188-190.
[2] 臺(tái)德藝,王昆侖,郭昌健.高??蒲行畔⒐芾硐到y(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2009(9):2339-2341.
[3] 劉晨霞,張明.高??蒲泄芾硇畔⑾到y(tǒng)實(shí)踐初探[J].科技管理研究,2009(8):253-254.