摘 ?要:隨著信息化的發(fā)展,高校的教務(wù)系統(tǒng)也有同樣的信息化需求,因此設(shè)計(jì)一款校園教務(wù)管理系統(tǒng)是非常必要的。本文設(shè)計(jì)的系統(tǒng)使用Java語言編寫,采用的是當(dāng)前主流的面對對象的開發(fā)模式,在系統(tǒng)的架構(gòu)和設(shè)計(jì)過程中,從前端、后臺、數(shù)據(jù)庫等三個(gè)方面架構(gòu),前端頁面的設(shè)計(jì)與實(shí)現(xiàn)主要是用HTML+CSS+JS,采用了當(dāng)前主流的、輕量級的layui前端框架;后臺程序代碼使用當(dāng)前Java主流框架之一的SSM框架(Spring+SpringMVC+Mybatis)和JSP頁面技術(shù);后臺數(shù)據(jù)庫采用MySQL;在開發(fā)過程中還加入了Maven項(xiàng)目管理插件、Shiro權(quán)限認(rèn)證框架、Quartz定時(shí)任務(wù)框架、jxl等等中間插件來實(shí)現(xiàn)某些功能。最終實(shí)現(xiàn)了校園教務(wù)管理系統(tǒng)的設(shè)計(jì)與開發(fā)。
關(guān)鍵詞:教務(wù)管理;Spring;Spring MVC;Java
中圖分類號:TP311.52 ? ? ?文獻(xiàn)標(biāo)識碼:A 文章編號:2096-4706(2019)17-0022-03
Abstract:With the development of information technology,the educational administration system in colleges and universities has the same requirements,so it is very necessary to design a campus educational administration system. The system is written in Java language and adopts the current mainstream object-oriented development mode. In the system structure and design process,from front-end,back-end,database and other three aspects of architecture. The design and implementation of front-end pages are mainly based on HTML+CSS+JS,using the current mainstream lightweight framework layui front-end framework;the background code uses one of the current mainstream Java frameworks,the SSM framework (Spring+SpringMVC+Mybatis) and JSP page technology;the background database uses MySQL;Maven project management plug-in,Shiro authority authentication framework,Quartz timing task framework,jxl and other middleware plug-ins are added to the development process to achieve some functions. Finally,the design and development of campus educational administration management system is realized.
Keywords:educational ?management;Spring;Spring MVC;Java
0 ?引 ?言
本系統(tǒng)的設(shè)計(jì)符合當(dāng)前互聯(lián)網(wǎng)發(fā)展趨勢,將日常的校園信息辦公從線下轉(zhuǎn)移到線上,通過互聯(lián)網(wǎng)的優(yōu)勢來打造舒適快捷的無紙辦公環(huán)境,實(shí)現(xiàn)智能化辦公和快捷辦公,大大提升了辦公效率、信息安全性以及信息持久化水平,自動化辦公的實(shí)現(xiàn)是一種質(zhì)的層面的提升,給用戶的體驗(yàn)也不同尋常。雖然傳統(tǒng)化辦公已經(jīng)使用了很久,但這也導(dǎo)致了人們的思想被禁錮在傳統(tǒng)化辦公的思想中,在整個(gè)互聯(lián)網(wǎng)大趨勢下,這種傳統(tǒng)辦公思想必然會被新的自動化辦公方式所替代,因此,辦公方式的改變無論從效率、質(zhì)量、體驗(yàn)等方面都是迎合了當(dāng)前時(shí)代發(fā)展的潮流和技術(shù)發(fā)展的趨勢。
本文對校園教務(wù)系統(tǒng)進(jìn)行了開發(fā),該系統(tǒng)類似于一個(gè)企業(yè)級管理方案(ERP系統(tǒng))中的OA系統(tǒng),可以對學(xué)生、教師、教室、課程等信息進(jìn)行有效的分類和管理,能夠大大提高效率,不僅能有效地操作數(shù)據(jù),還能夠?qū)?shù)據(jù)做出有效的篩選、判斷、統(tǒng)計(jì)、分析、存儲。利用數(shù)據(jù)庫存儲數(shù)據(jù),與存儲在電腦硬盤中相比,大大節(jié)省了空間資源,還可以將數(shù)據(jù)備份,方便對數(shù)據(jù)的各種處理和轉(zhuǎn)移,不需要再花費(fèi)人力去定期整理或清除部分無效數(shù)據(jù)。在系統(tǒng)平臺中對數(shù)據(jù)進(jìn)行增刪查改等操作,快捷便利。處理效率也有較大的提升,同時(shí)在用戶的使用過程中添加一些人性化和個(gè)性化的處理,提高用戶對該平臺的好感,進(jìn)一步擴(kuò)大了使用該平臺的用戶范圍。我們在平臺中加入了許多統(tǒng)計(jì)視圖,管理員可以通過學(xué)生的班級、年級、專業(yè)、學(xué)院,教師的學(xué)位、院系、級別等信息來統(tǒng)計(jì)出人數(shù),展示出學(xué)生與教師的人數(shù),清晰明了,一目了然。
1 ?校園教務(wù)系統(tǒng)的設(shè)計(jì)
1.1 ?技術(shù)簡介
本系統(tǒng)的前臺采用H5+C3的技術(shù),后臺采用的是SSM框架,使用SSM框架主要是提高開發(fā)效率,SSM也是目前企業(yè)開發(fā)使用率比較高的框架。
根據(jù)本次項(xiàng)目的設(shè)計(jì),本系統(tǒng)所使用的主體框架為SSM,中間也使用了一些主流的輔助型框架,例如前端頁面使用的當(dāng)前主流框架layui,中間插件有Shiro權(quán)限框架、Quartz定時(shí)框架等等。
該系統(tǒng)的基本業(yè)務(wù)流程,主要分為以下幾個(gè)方面:在前端頁面通過JSP頁面來實(shí)現(xiàn)請求的發(fā)送,在JSP頁面中使用layui前端框架來布置頁面,用戶通過點(diǎn)擊頁面JS腳本、超鏈接、提交表單、瀏覽器框輸入U(xiǎn)RL等方法,采取同步或異步的方式發(fā)送URL請求,Request負(fù)責(zé)接收請求,Response負(fù)責(zé)傳送請求,控制層(Controller)根據(jù)發(fā)送的請求來找到相對應(yīng)的方法,采用調(diào)用下層業(yè)務(wù)邏輯層(Biz)的方法,在業(yè)務(wù)邏輯層中可通過代碼邏輯,將傳來的數(shù)據(jù)進(jìn)行加工處理,調(diào)用多個(gè)數(shù)據(jù)持久層(DAO)方法,來執(zhí)行單一的數(shù)據(jù)庫操作,數(shù)據(jù)持久層(DAO)通過MyBatis框架配置的xml文件,根據(jù)方法名找到相對應(yīng)的SQL語句,來執(zhí)行增刪查改等操作,數(shù)據(jù)庫執(zhí)行該操作后返回結(jié)果值,MyBatis框架自動封裝結(jié)果集(封裝類型可選擇)返回給數(shù)據(jù)持久層,數(shù)據(jù)持久層將值返回給業(yè)務(wù)邏輯層,在業(yè)務(wù)邏輯層中將數(shù)據(jù)封裝加工處理后返回給控制層,此時(shí)Spring MVC框架會封裝數(shù)據(jù),將數(shù)據(jù)放入模型(Model)中,攜帶數(shù)據(jù)模型跳轉(zhuǎn)到指定的視圖(View),前端視圖頁面接收數(shù)據(jù)模型后經(jīng)過前端框架對頁面進(jìn)行渲染、美化,呈現(xiàn)給客戶端。
以上流程使用當(dāng)前互聯(lián)網(wǎng)流行的MVC開發(fā)模式,不僅僅實(shí)現(xiàn)了視圖、模型、控制器的精準(zhǔn)匹配和完全分離,還實(shí)現(xiàn)了數(shù)據(jù)持久層、業(yè)務(wù)邏輯層、控制層以及中間插件的分離,符合Java開發(fā)低耦合、高內(nèi)聚的思想。在后期維護(hù)或更改功能時(shí),對于前端頁面的改變不需要更改任何后端代碼,方便快捷。后臺層與層之間耦合度低,后臺代碼的更改也不會影響任何一個(gè)前端頁面,大幅度提高了系統(tǒng)的健壯性和復(fù)用率,同時(shí)也大幅度提高了團(tuán)隊(duì)成員的開發(fā)效率,有益于團(tuán)隊(duì)之間的協(xié)同辦公。
1.2 ?迎新部門現(xiàn)狀
學(xué)校各迎新部門的新信息相對獨(dú)立。一些部門有管理系統(tǒng),有些部門使用人工操作。市面上并沒有專門針對“迎新”這個(gè)主題開發(fā)的平臺,即使有系統(tǒng),這些自包含系統(tǒng)也不會共享信息并形成很多信息孤島,從而導(dǎo)致部門和系統(tǒng)之間無法進(jìn)行協(xié)調(diào)和共享。
2 ?系統(tǒng)需求分析
對于一個(gè)校園內(nèi)部的教務(wù)管理運(yùn)營而言,人力資源信息的管理是不可或缺的一部分,對人力資源信息的管理也決定著該高校內(nèi)部的運(yùn)營管理效率的高低和能否在未來持續(xù)長久地發(fā)展。通過該系統(tǒng)可以提高校園內(nèi)部在人才利用和人員管理方面的效率,更能提升高校的管理能力,充分利用校園內(nèi)部人力物力資源,節(jié)省更多的時(shí)間、空間、資源等等,迎合當(dāng)前提倡的智能化校園的趨勢。針對本系統(tǒng)的設(shè)計(jì)需求,通過查閱資料以及系統(tǒng)的學(xué)習(xí)和分析,前期設(shè)計(jì)出的系統(tǒng)包含以下功能模塊:
(1)管理課程信息:針對校園內(nèi)部的各學(xué)科各學(xué)院下開設(shè)的課程,管理員可以通過系統(tǒng)填寫相關(guān)的信息來完成增加課程、刪除課程、修改課程信息、批量錄入課程信息、批量導(dǎo)出課程信息等操作。
(2)查詢信息:本功能模塊主要是針對系統(tǒng)中的查詢功能,對各用戶角色有不同的查詢功能,包含模糊查詢、多條件查詢、精準(zhǔn)查詢等等,例如:根據(jù)課程條件來獲取授課課程列表(課程名稱,學(xué)期,授課教師等信息)、根據(jù)編號查詢課程詳細(xì)信息、多條件查詢單個(gè)學(xué)生詳細(xì)信息、多條件查詢單個(gè)教師詳細(xì)信息、多條件查詢學(xué)生信息(根據(jù)學(xué)生姓名,年齡,班級)、多條件查詢老師信息(根據(jù)學(xué)院,性別,教師姓名,職位)。
(3)選課注冊:對于開設(shè)課程的管理,其中包含教師選教課程、教師退選課程、學(xué)生選修課程、學(xué)生退選課程、學(xué)生重修課程等方面,是校園內(nèi)部教學(xué)信息的內(nèi)容之一。
(4)管理開設(shè)課程:管理已開設(shè)課程,管理員對學(xué)期已開設(shè)的課程進(jìn)行管理,實(shí)現(xiàn)開設(shè)課程、關(guān)閉課程、修改課程狀態(tài)、根據(jù)學(xué)期統(tǒng)計(jì)各個(gè)授課教師的選課情況、學(xué)生個(gè)人根據(jù)學(xué)期查詢課表、院系根據(jù)學(xué)期查詢課表等功能。
(5)管理學(xué)生信息:學(xué)生信息的管理是校園信息的管理范圍之一,例如:錄入學(xué)生信息、刪除學(xué)生信息、修改學(xué)生信息、批量錄入學(xué)生信息、批量導(dǎo)出學(xué)生信息。
(6)管理教師信息:教師信息的管理是校園信息也歸屬于管理信息范圍,例如:錄入教師基本信息、刪除教師信息、修改教師詳細(xì)信息、批量錄入教師信息、批量導(dǎo)出教師信息。
(7)學(xué)生成績管理:對于學(xué)生平時(shí)課程成績的管理,例如:錄入學(xué)生成績、修改學(xué)生成績、刪除學(xué)生成績記錄、成績排名(班級、專業(yè)、院系)。
(8)統(tǒng)計(jì)信息:通過各類統(tǒng)計(jì)視圖實(shí)現(xiàn)信息可視化處理,例如:學(xué)生人數(shù)統(tǒng)計(jì)(學(xué)期、專業(yè)、學(xué)院)、教師人數(shù)統(tǒng)計(jì)(職位、院系)、教師授課情況、成績統(tǒng)計(jì)。
3 ?數(shù)據(jù)庫設(shè)計(jì)
從數(shù)據(jù)庫本質(zhì)上來說,校園教務(wù)管理系統(tǒng)是一個(gè)用來存儲學(xué)生、教師、課程、成績等基本數(shù)據(jù)信息的庫。一個(gè)資源如此龐大的數(shù)據(jù)庫需要一個(gè)完整的系統(tǒng)來對數(shù)據(jù)進(jìn)行增刪改查的管理和統(tǒng)一規(guī)范。數(shù)據(jù)庫表結(jié)構(gòu)、表字段、表關(guān)聯(lián)信息的設(shè)計(jì)優(yōu)劣嚴(yán)重影響著系統(tǒng)初期開發(fā)的簡易程度,同時(shí)也影響著后期校園內(nèi)部對這些信息處理或管理需要投入的人力資源和精力的多少。因此,在設(shè)計(jì)數(shù)據(jù)庫時(shí),應(yīng)該考慮得更加全面,深入系統(tǒng)本身去分析,去剖析對象身上附帶的屬性以及對象與對象之間的關(guān)系,以及思考是否需要建立一張中間表來連接這些信息等。
本系統(tǒng)采用的是MySQL數(shù)據(jù)庫,名稱為eas,是校園教務(wù)管理系統(tǒng)的縮寫。數(shù)據(jù)庫中的表有:學(xué)生信息表(tb_student)、教師信息表(tb_teacher)、任課信息表(tb_teach)、成績信息表(tb_score)。
4 ?系統(tǒng)測試界面
根據(jù)本系統(tǒng)的架構(gòu)設(shè)計(jì)要求,設(shè)計(jì)出詳細(xì)的功能結(jié)構(gòu)圖,是由各功能模塊相互間的附屬關(guān)系而得的。根據(jù)設(shè)計(jì)的實(shí)際情況,結(jié)構(gòu)圖中的每一個(gè)具體的細(xì)節(jié)操作性功能都用一個(gè)方格表示出來。依靠用戶角色來區(qū)分,可以把本次設(shè)計(jì)的系統(tǒng)角色分為三種:管理員、學(xué)生、教師等三大模塊,不同的用戶的功能不同,也代表著角色有擁有的權(quán)限不同。
管理員主要負(fù)責(zé)教師、學(xué)生、課程信息的管理,管理員后臺頁面如圖1所示。
教師角色主要負(fù)責(zé)所教學(xué)生成績管理和教師本人信息管理,教師信息添加頁面如圖2所示。
學(xué)生角色主要負(fù)責(zé)學(xué)生成績查詢、學(xué)生選課、學(xué)生信息管理,學(xué)生修改信息頁面如圖3所示。
5 ?結(jié) ?論
本系統(tǒng)是一個(gè)基于Web開發(fā)的教務(wù)管理系統(tǒng),采用MySQL作為后臺數(shù)據(jù)庫,采用H5+C3作為頁面設(shè)計(jì)技術(shù),后臺業(yè)務(wù)邏輯使用企業(yè)級框架SSM。系統(tǒng)實(shí)現(xiàn)了管理課程信息、選課注冊、管理開設(shè)課程、管理學(xué)生信息、教師成績管理、學(xué)生成績管理和信息統(tǒng)計(jì)等功能。
參考文獻(xiàn):
[1] 清宏計(jì)算機(jī)工作室.JSP編程技巧 [M].北京:機(jī)械工業(yè)出版社,2002.
[2] 胡哲文.教務(wù)管理系統(tǒng)安全設(shè)計(jì)與實(shí)現(xiàn) [J].益陽職業(yè)技術(shù)學(xué)院學(xué)報(bào),2017,14(Z1):75-81.
[3] 李君.巧用Jsp和Java連接Mysql數(shù)據(jù)庫 [J].現(xiàn)代商貿(mào)工業(yè),2015,36(7):94-95.
[4] 田娟,徐釗.基于J2EE的MVC設(shè)計(jì)模式的分析與思考 [J].計(jì)算機(jī)與現(xiàn)代化,2010(10):54-58.
作者簡介:王忠賢(1985-),男,漢族,河南鄲城人,初級職稱,學(xué)士學(xué)位,研究方向:計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)工程。