高 博, 夏 輝
(沈陽師范大學 科信軟件學院, 沈陽 110034)
基于Struts2的科研業績考評系統的設計與實現
----以沈陽師范大學為例
高 博, 夏 輝
(沈陽師范大學 科信軟件學院, 沈陽 110034)
科研業績考核在高校年度、季度教師考評中起到關鍵性作用,針對目前高校科研考評存在的各種問題,提出了基于Struts2的科研業績考評管理系統。以沈陽師范大學為例,根據高校科研考評管理條例的需要,系統著重解決高校年度、季度教師科研考評量大、難管理、需求功能不完善、信息錄入不準確、系統難維護、高峰訪問系統慢等問題。系統使用UML面向對象技術根據高校科研管理實際需求進行用例建模,并采用Struts2框架技術進行系統開發,在系統運行上合理運用Memcached緩存技術將數據庫中的一部分對象和數據存儲到緩存中,以減少服務器并發訪問量大出現數據庫連接數多和崩潰等現象的出現,系統的成功搭建不僅實現了科研量化考評的數字化管理,減輕日常科研管理工作壓力,同時也為日后高校實現數字化校園起到了一定的指導意義。
科研業績考評;Struts2;Memcached
在科學技術引領人們生活的今天,人們更加關注知識的創新和積累,高校作為人才培養的高等學府、科研團隊的聚集地,在社會的發展中起到了不可取代的地位,而科研更是衡量一所高校綜合實力高低的重要指標,能夠提高科研業績考評管理就是增強高校的活力,提高教師教育團隊的教學和科研能力的最有效途徑,同時對實現高校未來發展更有其重要的戰略意義。
1.1Struts2框架介紹
Struts2是基于MVC設計模式的可以負責控制層和顯示層的應用框架,通過控制器把模型和視圖之間的通信連接到一起[1]。
MVC處理過程:首先,控制器接收用戶的請求,并決定應該調用哪個模型進行處理。然后,模型根據用戶請求進行相應的業務邏輯處理,并返回數據。最后,控制器調用相應的視圖來格式化模型返回的數據,并通過視圖呈現給用戶用Servlet技術實現控制器的功能,用JavaBean技術實現模型的功能。MVC處理模式如圖1所示。MVC特點:視圖層和業務層分離,這樣就允許更改視圖層代碼而不用重新編譯模型和控制器代碼,同樣,一個應用的業務流程或者業務規則的改變只需要改動MVC的模型層即可。因為模型與控制器和視圖相分離,所以很容易改變應用程序的數據層和業務規則。

圖1 MVC處理模式圖
落實到具體的實際應用中,給控制器一個HTTP請求,控制器就會開始調取一個Action類,應用程序通過調取的Action類來作為一個直接指示,開始進行二者之間信息的交換,從而達到最新的的信息狀態。另外,為了完成這2個模型和視圖之間的數據傳輸,框架也可以用一種ActionForm類的方式實現,Struts的框架原理如圖2。
ActionServlet是一個中央控制器,是框架的核心部件,它同servlet一樣繼承HttpServlet。ActionForm的目的在于數據的集中收集,類似頁面信息的實體類。它可以自動轉換成需要的數據類型,如name是int類型,這樣ActionForm會得到getName類型同樣的int型,和以往的自動強制轉化不同。Action是業務邏輯控制器,ActionForward是它的返回類型,是底層模型的核心部件,為業務邏輯和表單模型的信息交換提供信息傳遞和獲取服務。系統使用Struts2框架技術[2-3]不僅在滿足Servlet和JSP構建可擴展應用需要,同時減少了工程開發所需底層應用,為系統的開發節省了大量時間,提高了項目的合理規劃管理,使系統的維護更容易。在運營經費有限的情況下可以更好的利用資金做出最合理最具有優勢的項目。
1.2Memcached介紹
Memcached是一個高性能的分布式內存對象緩存系統,用于動態Web應用以減輕數據庫負載。它通過在內存中緩存數據和對象來減少讀取數據庫的次數,從而提高動態、數據庫驅動網站的速度。Memcached基于一個存儲鍵/值對的hashmap。其守護進程(daemon)是用C語言寫的,但是客戶端可以用任何語言來編寫,并通過memcached協議與守護進程通信。Memcached緩存技術面向內存中的緩存對象和數據,客戶端應用程序可以直接從高速緩沖存儲器中讀出,不用頻繁的訪問數據庫,加快了響應速度[4]。Memcached在具體應用中,會將所需對象或者數據提前加載到緩存中,如遇到Memcached中沒有的對象或數據,通過SQL加載到緩存中,當用戶需要時直接從緩存中讀取對象或數據,減少同數據庫交互的過程[5-7]。系統使用Memcached緩存技術,在用戶并發訪問服務器高峰時,將其緩存特性彰顯至極致,大量減少同數據庫的鏈接數,降低對數據庫的操作,不僅在加快用戶響應的同時,也減少了服務器的壓力,使用系統的運行更加平穩。

圖2 Struts2框架原理圖
1.3JSON通訊協議

圖3 系統權限分布圖Fig.3 system permissions distribution diagram
JSON是輕量級數據交互的負載格式[8],它是基于JavaScript語言的一個子集,提供了一種具有嵌套數據元素的結構[9],JSON將一組鍵值對定義為一個對象,將格式的數據賦值給一個變量,通過鍵名就可以取到鍵名所對應的數值。方便于傳輸,較少冗余的字符。當然直接傳二進制是最好的,但面臨難解析的問題。亦可以是xml、純字符串的方式,但json有其獨到的好處。有很多的jsonapi提供了json字符串轉成對象、對象轉換成json串的方法。易于閱讀。json代碼的良好結構,可以很直觀地了解存的是什么內容。采用合理、穩定的通訊結構,為系統并行開發奠定了基礎,同時提高了系統的可維護性。
2.1 構建初始化信息模型
搭建系統平臺之初構建初始化信息模型[10],初始化信息模型包括初始化院校數據、初始化科系數據、初始化人員信息數據組成。院校數據包括院校名稱,院校代碼;科系數據包括科系名稱,科系或科系工作人員;人事資料包括姓名,員工卡號,所屬的科系;學名數據包括科研工作項目,結出碩果,科研申請,社會認可程度。
2.2 用戶權限分配模塊
為滿足沈陽師范大學日常教師科研考評管理條例,將用戶等級分為科研處領導、科研處管理人員、單位管理員、參評教師四級。科研處領導主要負責決策支持、監督科研處管理人員日常工作,同時可對各類統計信息進行查詢。科研處管理人員主要進行日常辦公、對科研業績進行管理、發布科研信息、整理各類統計信息,單位管理員主要負責本單位參評教師科研業績的錄入、修改、刪除、查詢,并對已錄入的信息進行統計和導出。參評教師主要進行個人科研信息的查詢,對出現問題的信息提出異議,對需保留的分數提出結轉申請[11]。如圖3所示為系統權限分布圖。
2.3 科研數據、成果錄入模塊
科研數據錄入模塊包含, 科系數據,教職員工數據,會議的種類,期刊類型,專著級別,成果種類,論文檢索,類別分類,期刊影響力,項目種類。這些數據根據沈陽師范大學教師科研考評管理條例,由科研處管理人員統一進行錄入。
科研成果錄入模塊包括各項科研考核指標[12-13],期刊統計,會議統計,專著統計,成果統計和項目統計。成果錄入是基于科研業績考評條例基礎之上的,需科研處管理人員做好對教師成果審查后再錄入。
2.4 系統基本功能模塊
系統基本功能模塊主要包括員工更改密碼,類型百分比設置,獎金百分比設置,量化規模和量化分數調整設置。該審核結果百分比或參評教師成果量化百分比超過1,可根據當時情況設置調整比例。
3.1 系統登錄功能設計

圖4 教師用戶登陸成功頁面Fig.4 Teacher user login success page
根據高校實際應用需求將登陸用戶分為教師和管理人員,這里以教師登陸為例進行介紹,在年度科研考評高峰期,將教師用戶賬號進行整理緩存至本地[14],當教師用戶在峰值訪問時,可對用戶賬號進行本地驗證,減少服務器負載,加快系統響應速度。為加強系統安全性,在登陸頁面添加了院系圖標和院系名稱驗證機制,這種執行數據庫查詢所屬學院、對應的單位名稱,加載圖片和信息相結合的方式,在阻止使用非法暴力軟件破解的同時,也增添了教師對學院的歸屬感[15]。如果各項信息及驗證正確則表明登陸成功,圖4為教師用戶登陸成功頁面。
3.2 登陸功能業務邏輯實現
登陸功能的業務邏輯層不負責具體的處理,將請求按實際需求傳遞到Model層,由Model層進行相應的數據處理,將結果返回用戶,系統登陸功能[16]部分實現代碼如下:
publicStringexecute()
{
HashMaptempTopMap=(HashMap)this.application.getAttribute(″CurrentActInfo″);
Stringyyyy=((String)tempTopMap.get(″ND″)).trim().substring(0, 4)+″е№rеc|″;
if((UID==null)‖(PWD==null)‖(deptCode==null)‖(PWD==staffRole))
{
return″oginFail″
}
3.3 登陸功能Model層實現
登陸功能Model層接到業務邏輯層傳遞的信息[17],對所需要求進行具體處理,將處理結果返回回去,功能實現部分代碼如下:
if((((String)teacherObject.get(″EJDWBH″)).equals(deptCode))&&
(((String)teacherObject.get(″PWD″)).equals(PWD))) {
System.out.println(″teacherPWDejdwbhright!!!!″+(String)teacherObject.get(″PWD″));
userExistState=true;
}
本文提出的基于Struts2教師科研業績考評系統,很好的滿足了高校對教師科研業績考評的管理需要,大大減少了部門工作壓力,在提高工作效率的同時,更是合理規劃了科研業績考評管理,系統的技術選用更是大大提高了服務端響應速度,加強了用戶體驗,使系統的維護更容易。系統的上線運行更是為其他部門實現信息化管理起到一定的指導意義。
[ 1 ]賈向煒,高瞻. 基于MVC框架技術的教師科研管理系統的設計與實現[J]. 電腦知識與技術, 2015(31):63-65.
[ 2 ]王昊. 基于Struct2框架技術在WEB項目中的應用[J]. 科學中國人, 2014(4):24.
[ 3 ]陳玉石,王涵波. 基于Struts2的企業內部交流平臺設計與開發[J]. 網絡安全技術與應用, 2016(2):42-45,47.
[ 4 ]任奕奕. 中學數字化校園的建設與應用[M]. 北京:北京師范大學出版社, 2012:102-118.
[ 5 ]劉亮,徐步東,譚艷艷. 基于Memcached內存緩存技術應用研究[J]. 計算機技術與發展, 2015(11):204-208.
[ 6 ]劉芳,管新,時建,等.Memcached在醫院信息系統中的應用[J]. 中國醫療設備, 2014(6):37-40.
[ 7 ]郭棟,王偉,曾國蓀. 基于Memcached的緩存資源集中管理方法[J]. 計算機技術與發展, 2013(12):62-65.
[ 8 ]袁偉華.JSON在移動終端ASP.Net的通信技術[J]. 電腦編程技術與維護, 2015(2):36-37.
[ 9 ]屈展,李嬋.JSON在Ajax數據交換中的應用研究[J]. 西安石油大學學報, 2011(1):95-98.
[10]周麗琴,陸劍. 基于元評價的高校科研績效量化考核評價[J]. 科技管理研究, 2016(11):101-105.
[11]陳慧敏. 高校教師教研工作量考評體系探討[J]. 中國高校科技, 2012(增刊1):37-38.
[12]吳凌云. 貴陽學院教師科研積分管理系統設計與分析[D]. 昆明:云南大學, 2015.
[13]陳冰瓊. 高校教師績效量化考核指標體系的研究[D]. 廣州:華南理工大學, 2012.
[14]張喜愛,馬威,曾慶平,等. 基于校園網的高校科研業績管理系統開發[J].電化教育研究, 2011(5):45-48.
[15]郭棟,王偉,曾國蓀. 基于Memcached的緩存資源集中管理方法[J]. 計算機技術與發展, 2013(12):62-65.
[16]聶常紅,張屹,李寶智. 基于Struts2的MVC模式在高校科研管理系統中的應用[J]. 電子技術與軟件工程, 2015(1):95-97.
[17]薛元霞,曹振麗,楊毅,等. 基于uml和struts架構的科研管理系統[J]. 農業網絡信息, 2013(2):54-57.
DesignandimplementationofscientificresearchperformanceassessmentsystembasedonStruts2 ----TakingShenyangNormalUniversityasanexample
GAO Bo, XIA Hui
(SoftwareCollege,ShenyangNormalUniversity,Shenyang110034,China)
Scientificresearchperformanceassessmentplaysadecisiveroleintheannual,quarterlycollegeteacherevaluation.,intheviewoftheexitingproblemsinuniversityscientificresearchassessment,aresearchperformanceevaluationmanagementsystembasedonStruts2isproposed,takingShenyangnormaluniversityasanexample.AccordingtotheRequirementofScientificResearchAssessmentManagementinUniversities,thesystemfocusesonsolvingtheproblemsaslargeamountofquantities,difficulttomanage,imperfectofdemandfunction,hardtomaintainthestabilityofthesystemandslowdownduringthepeakhoursintheannual,quarterlycollegeteachersresearchassessment.ThesystemusesUMLobject-orientedtechnologytomodelbasedontheactualneedsofuniversityresearchmanagement,andconductsystemdevelopmentwithStruts2frameworktechnology.ReasonableuseMemcachedcachetechnologyinsystemoperationtorealizethedatastoredinthedatabaseandthecache.Thisoperationwillreducetoomuchdatabaseconnectionsandcollapsesphenomenonresultbyconcurrenttrafficvisits.thesystemnotonlyachievessuccessfullythedigitalmanagementofscientificresearchquantitativeevaluation,reducethepressureofdailyresearchmanagement,butalsoplaysacertainguidingsignificancetorealizethedigitalcampusofuniversitiesinthefuture.
scientificresearchperformanceassessment;Structs2;memcached
1673-5862(2017)01-0098-05
2016-10-25。
遼寧省科技廳自然科學基金資助項目(2014020118); 遼寧省教育廳科學技術基金資助項目(L2014441)。
高 博(1987-),男,遼寧盤錦人,沈陽師范大學助理實驗員; 通信作者: 夏 輝(1979-),男,河南永城人,沈陽師范大學副教授。
TP
A
10.3969/j.issn.1673-5862.2017.01.019