李俊成 李健 徐運(yùn)標(biāo) 楊幸 成亞玲 劉曼春
摘? 要:?jiǎn)为?dú)招生由各高職院校自主組織、實(shí)施的分類招生選拔考試。本文針對(duì)單獨(dú)招生的綜合素質(zhì)測(cè)試的組織、管理和實(shí)施工作,利用數(shù)據(jù)庫(kù)技術(shù)、web技術(shù)、語(yǔ)音自動(dòng)播報(bào)技術(shù)及SSM框架技術(shù)(Spring + SpringMVC + MyBatis)等信息技術(shù),設(shè)計(jì)并實(shí)現(xiàn)了一種具有語(yǔ)音播報(bào)功能的單獨(dú)招生綜合素質(zhì)測(cè)試系統(tǒng),并應(yīng)用于本單位單獨(dú)招生綜合素質(zhì)測(cè)試工作。應(yīng)用顯示,本系統(tǒng)較好地解決了綜合素質(zhì)測(cè)試工作中的考生、考官、考場(chǎng)、候考、導(dǎo)考、測(cè)試、結(jié)果統(tǒng)計(jì)與分析等管理工作,提高了測(cè)試工作的效率和信息化水平。
關(guān)鍵詞:?jiǎn)为?dú)招生;綜合素質(zhì)測(cè)試;SSM框架技術(shù);語(yǔ)音播報(bào)
中圖分類號(hào):TP31? ? ?文獻(xiàn)標(biāo)識(shí)碼:A
Abstract: Independent enrollment is organized and implemented by each higher vocational college. This paper proposes and implements a students' comprehensive quality test system with voice broadcast function for college's independent enrollment. The system uses database technology, web, voice automatic broadcast and SSM (Spring + SpringMVC + MyBatis) framework. The designed system is used to test students' comprehensive quality in the independent enrollment task in the author's college. Application results show that the proposed system can effectively carry out management tasks, including those of students' comprehensive quality test, examinees, examiners, examination rooms, waiting for examination, guide, test, and analysis of performance statistics. The system improves the efficiency of the tests and informatization level.
Keywords: independent enrollment; comprehensive quality test; SSM framework technology; voice broadcast
1? ?引言(Introduction)
教育部從2007年開(kāi)始在全國(guó)高職院校開(kāi)展單獨(dú)招生工作試點(diǎn),10多年來(lái),其招生形式得到了社會(huì)、家長(zhǎng)和考生廣泛認(rèn)可,招生規(guī)模、參考人數(shù)不斷增加,考務(wù)工作難度越來(lái)越大,為了提高效率,各高職院校都逐步采用信息技術(shù)手段助力單獨(dú)招生工作。例如,將UML應(yīng)用于單獨(dú)招生考務(wù)系統(tǒng)設(shè)計(jì),開(kāi)發(fā)了基于web的考試系統(tǒng)、利用SSM框架、HTML5、Jquery、CSS3等技術(shù)來(lái)提高開(kāi)發(fā)效率和增加用戶體驗(yàn)[1-4],這些系統(tǒng)更多側(cè)重于實(shí)現(xiàn)了無(wú)紙化考試系統(tǒng)的功能,而將單招測(cè)試工作整體流程考慮不多。本文從單獨(dú)測(cè)試工作的流程規(guī)范出發(fā),根據(jù)測(cè)試工作的參與角色職責(zé),分為七類用戶,綜合利用數(shù)據(jù)庫(kù)技術(shù)、web技術(shù)、語(yǔ)音自動(dòng)播報(bào)技術(shù)及SSM框架技術(shù)等信息技術(shù)手段解決單獨(dú)招生測(cè)試工作中的考生、考官、考場(chǎng)、候考、導(dǎo)考、測(cè)試、結(jié)果統(tǒng)計(jì)與分析等管理工作,重點(diǎn)實(shí)現(xiàn)了智能導(dǎo)考、候考提醒,創(chuàng)造性地解決了考官、導(dǎo)考、考生之間的銜接與溝通,提高了測(cè)試工作的效率和信息化水平。
2? ?系統(tǒng)分析(System analysis)
2.1? ?系統(tǒng)需求分析
本系統(tǒng)主要針對(duì)職業(yè)院校單獨(dú)招生綜合素質(zhì)測(cè)試工作,實(shí)現(xiàn)二級(jí)學(xué)院信息管理、專業(yè)管理、用戶管理、素質(zhì)測(cè)試題庫(kù)、在線測(cè)試、在線成績(jī)?cè)u(píng)定、成績(jī)審核、考核指標(biāo)體系管理、考場(chǎng)管理(測(cè)試考場(chǎng)和候考室)、考官管理、考生數(shù)據(jù)管理、考生導(dǎo)考管理、考務(wù)管理等工作,實(shí)現(xiàn)單獨(dú)招生綜合素質(zhì)測(cè)試的信息化和智能化[3]。
2.2? ?系統(tǒng)功能分析
本系統(tǒng)用戶分為系統(tǒng)管理員(超級(jí)管理員)、二級(jí)學(xué)院管理員、候考管理員、主考、考官、統(tǒng)分員、考生七類人員。各類用戶的系統(tǒng)功能如下:
(1)系統(tǒng)管理員:登錄管理、密碼找回管理、二級(jí)學(xué)院信息管理、二級(jí)學(xué)院專業(yè)信息管理、二級(jí)學(xué)院管理員信息管理、安全管理等功能。
(2)二級(jí)學(xué)院管理員:登錄管理、密碼找回管理、安全管理、考生信息管理、考官管理、候考室管理、測(cè)試考場(chǎng)管理、考試試題管理、測(cè)試權(quán)重管理、考生查詢管理、考場(chǎng)門(mén)貼管理、考生簽名表管理。
(3)主考官:登錄管理、密碼找回管理、考生呼叫、考試過(guò)程管理(開(kāi)始考試、結(jié)束考試、缺考、評(píng)分結(jié)束)、考試結(jié)果導(dǎo)出管理、考生評(píng)分、安全管理。
(4)考官:登錄管理、密碼找回管理、安全管理、考生評(píng)分。
(5)候考室管理員:登錄管理、密碼找回管理、安全管理、播報(bào)管理(暫停、重新播放)。
(6)統(tǒng)分員:登錄管理、密碼找回管理、安全管理、審核、生成考生成績(jī)表。
(7)考生:登錄管理、在線測(cè)試、安全管理。
3? ?系統(tǒng)設(shè)計(jì)(System design)
3.1? ?總體設(shè)計(jì)
根據(jù)系統(tǒng)預(yù)定的目標(biāo),基于用戶角色功能劃分,整體上分學(xué)生和教師(除學(xué)生外的所有用戶)兩個(gè)入口[4]。從系統(tǒng)運(yùn)行、使用、管理與維護(hù)的角度出發(fā),本系統(tǒng)采用B/S模式;為了保證系統(tǒng)設(shè)計(jì)技術(shù)的先進(jìn)性和可擴(kuò)展性,采用SSM(Spring+
SpringMVC+MyBatis)+MySQL+Tomcat相結(jié)合的技術(shù),分為用戶層、Web容器層、SSM整合層、數(shù)據(jù)存儲(chǔ)四個(gè)層次,如圖1所示。
用戶層為各類用戶提供不同的功能界面,實(shí)現(xiàn)用戶數(shù)據(jù)呈現(xiàn)和系統(tǒng)功能交互,通過(guò)http協(xié)議與Web容器層進(jìn)行通信。
Web容器層即Web服務(wù)器,主要負(fù)責(zé)Web項(xiàng)目的管理,開(kāi)啟監(jiān)聽(tīng)端口監(jiān)聽(tīng)用戶層發(fā)出的請(qǐng)求,解析用戶發(fā)來(lái)的http請(qǐng)求,然后將請(qǐng)求轉(zhuǎn)發(fā)到SSM整合層,并將SSM整合層返回的視圖呈現(xiàn)給用戶層。
SSM層是整個(gè)系統(tǒng)的技術(shù)核心,采用分層模型,實(shí)現(xiàn)層間松耦合。根據(jù)功能又可分為DAO層、Service層和Web表現(xiàn)層。DAO層由MyBatis框架負(fù)責(zé),主要負(fù)責(zé)創(chuàng)建DAO接口、映射文件,執(zhí)行數(shù)據(jù)庫(kù)操作(CRUD)、事務(wù)管理等方面的工作;Service層稱為業(yè)務(wù)邏輯層,通過(guò)調(diào)用DAO層的對(duì)象進(jìn)行相關(guān)業(yè)務(wù)處理,包括業(yè)務(wù)接口功能定義及業(yè)務(wù)接口功能的實(shí)現(xiàn)。Web表現(xiàn)層主要實(shí)現(xiàn)包括系統(tǒng)業(yè)務(wù)流程的控制及頁(yè)面視圖,由Spring MVC模塊實(shí)現(xiàn),是整個(gè)系統(tǒng)控制中心,頁(yè)面視圖主要負(fù)責(zé)用戶數(shù)據(jù)的呈現(xiàn),一般包括JSP頁(yè)面、JQuery、CSS等。Spring是整個(gè)SSM的核心,相當(dāng)于“管家”角色,主要為SSM體系內(nèi)各層注入對(duì)象,實(shí)現(xiàn)對(duì)象的生命周期管理,并負(fù)責(zé)Spring與MyBatis、Spring MVC與MyBatis的整合[5-7]。
數(shù)據(jù)存儲(chǔ)層,主要實(shí)現(xiàn)數(shù)據(jù)的物理存儲(chǔ)與管理,由MySQL關(guān)系數(shù)據(jù)庫(kù)實(shí)現(xiàn)。
整個(gè)系統(tǒng)執(zhí)行流程:用戶通過(guò)瀏覽器發(fā)送請(qǐng)求,Web服務(wù)器獲得請(qǐng)求后轉(zhuǎn)發(fā)給Spring MVC的控制器,控制器調(diào)用業(yè)務(wù)層處理業(yè)務(wù)邏輯,邏輯層向持久層發(fā)送請(qǐng)求,持久層與數(shù)據(jù)庫(kù)交互,后將結(jié)果返回給業(yè)務(wù)層,業(yè)務(wù)層將處理邏輯發(fā)送給控制器,控制器通過(guò)視圖解析、視圖填充,最終給提交給Web服務(wù)器,Web服務(wù)器將HTML內(nèi)容發(fā)送給瀏覽器[8-10]。
3.2? ?數(shù)據(jù)存儲(chǔ)設(shè)計(jì)
為保證系統(tǒng)的運(yùn)行,需要存儲(chǔ)系部信息、專業(yè)信息、用戶角色信息、用戶信息、考生信息、測(cè)試題庫(kù)信息、考場(chǎng)信息、測(cè)試指標(biāo)權(quán)重、測(cè)試等級(jí)權(quán)重等信息,這些信息分別存儲(chǔ)在相應(yīng)的表中,表之間建立了相應(yīng)的約束,以維護(hù)數(shù)據(jù)的一致性與完整性,同時(shí),為了保證系統(tǒng)功能的靈活性,專門(mén)針對(duì)系統(tǒng)功能建立了表,實(shí)現(xiàn)系統(tǒng)功能的動(dòng)態(tài)配置。下面以測(cè)試指標(biāo)權(quán)重表和測(cè)試考場(chǎng)安排表的設(shè)計(jì)進(jìn)行介紹。
測(cè)試指標(biāo)權(quán)重表d_testright結(jié)構(gòu)如表1所示。通過(guò)設(shè)計(jì)父級(jí)指標(biāo)(rightparentid)字段,指示該指標(biāo)對(duì)應(yīng)的上一級(jí)指標(biāo),從而保證了測(cè)試指標(biāo)體系的動(dòng)態(tài)可擴(kuò)展,能有效滿足指標(biāo)體 系的個(gè)性化設(shè)置需求。
4? ?系統(tǒng)關(guān)鍵技術(shù)(The key technologies)
4.1? ?SSM框架技術(shù)
為了降低系統(tǒng)的耦合度,提高系統(tǒng)的可擴(kuò)展性、代碼的復(fù)用性,降低系統(tǒng)后期的可維護(hù)性,盡可能減少系統(tǒng)硬編碼,采取變編程為配置的思想,采用主流的SSM框架技術(shù),將系統(tǒng)功能實(shí)現(xiàn)分層實(shí)現(xiàn),提高了系統(tǒng)開(kāi)發(fā)的效率。圖2是基于SSM框架執(zhí)行增加一個(gè)系部信息的執(zhí)行流程。
4.2? ?文本轉(zhuǎn)換成語(yǔ)音技術(shù)
Windows系統(tǒng)的文本轉(zhuǎn)換成語(yǔ)音的引擎MSTTS(Microsoft Text To Speech),能夠?qū)崿F(xiàn)將文本轉(zhuǎn)換成音頻流。JACOB(Java-COM Bridge)是Java與Microsoft的COM接口之間的橋梁,它通過(guò)自帶的DLL動(dòng)態(tài)鏈接庫(kù),并通過(guò)JNI的方式實(shí)現(xiàn)了在Java平臺(tái)上對(duì)COM程序的調(diào)用,提供了自動(dòng)化訪問(wèn)MS系統(tǒng)下COM組件和Win32 libraries的功能,可支持32位和64位JVMs。通過(guò)jacob包中的ActiveXComponent類創(chuàng)建用于封裝COM組件Java對(duì)象,通過(guò)對(duì)象的getObject()方法創(chuàng)建文件流對(duì)象和音頻流格式對(duì)象;通過(guò)Dispatch類對(duì)象的put()、call()、putRef()等方法設(shè)置音頻流格式、播放音量、播放速率、設(shè)置音頻輸出對(duì)象、創(chuàng)建wav文件,生成對(duì)應(yīng)文本的wav文件[11-14]。
4.3? ?jQuery技術(shù)
為了提高程序的交互性和響應(yīng)效率,本系統(tǒng)中采用功能強(qiáng)大、代碼簡(jiǎn)潔的JavaScript框架jQuery(jquery-3.2.1.min.js),
它封裝JavaScript常用的功能代碼,提供一種簡(jiǎn)便的JavaScript設(shè)計(jì)模式,優(yōu)化HTML文檔操作、事件處理、動(dòng)畫(huà)設(shè)計(jì)和Ajax交互。具有獨(dú)特的鏈?zhǔn)秸Z(yǔ)法和短小清晰的多功能接口、高效靈活的css選擇器,并且可對(duì)CSS選擇器進(jìn)行擴(kuò)展;擁有便捷的插件擴(kuò)展機(jī)制和豐富的插件等特性。通過(guò)jQuery使得頁(yè)面視圖的數(shù)據(jù)展示與頁(yè)面和后臺(tái)服務(wù)器之間的數(shù)據(jù)交互分離,簡(jiǎn)化了頁(yè)面代碼,提高了程序代碼的執(zhí)行效率和可維護(hù)性。通過(guò)使用$.ajax()實(shí)現(xiàn)前端頁(yè)面和后端web容器之間的異步交互和頁(yè)面局部更新,提升應(yīng)用程序的效率和改善用戶體驗(yàn)[15-18]。
4.4? ?系統(tǒng)其他相關(guān)技術(shù)
采用Maven進(jìn)行項(xiàng)目管理,它通過(guò)POM模型(Project Object Model)來(lái)描述項(xiàng)目,遵循應(yīng)用橫切的邏輯,對(duì)項(xiàng)目進(jìn)行自動(dòng)構(gòu)建和依賴管理,簡(jiǎn)化項(xiàng)目的管理和維護(hù)。
通過(guò)Spring AOP技術(shù),自動(dòng)為切面方法中匹配的方法所在的類生成代理對(duì)象,通過(guò)訪問(wèn)權(quán)限切面實(shí)現(xiàn)用戶的安全訪問(wèn);通過(guò)事務(wù)切面,實(shí)現(xiàn)對(duì)數(shù)據(jù)操作的事務(wù)管理。通過(guò)外部請(qǐng)求攔截器、管理員攔截器、學(xué)生攔截器針對(duì)不同用戶對(duì)頁(yè)面的訪問(wèn)進(jìn)行preHandle處理,確保頁(yè)面訪問(wèn)的安全;啟用基于注解的事務(wù)管理,對(duì)所有執(zhí)行業(yè)務(wù)層的訪問(wèn)方法均定義為切入點(diǎn)(Pointcut),并開(kāi)啟事務(wù)增強(qiáng)(通知)處理,確保數(shù)據(jù)操作的一致性和完整性,并將所有數(shù)據(jù)獲取的方法(get、find、select開(kāi)始的所有方法)定義為只讀事務(wù)。
參考文獻(xiàn)(References)
[1] 全雪輝.技能高考制度框架設(shè)計(jì)與組織實(shí)施研究—以湖北省為例[J].武漢船舶職業(yè)技術(shù)學(xué)院學(xué)報(bào),2016,15(3):1-2.
[2] 劉祥,孟麗娟,呂薇,等.職業(yè)適應(yīng)性測(cè)試在高職院校單招考試中的應(yīng)用[J].課程教育研究,2018,7(13):236-237.
[3] 孫文興,陳華.基于UML的單獨(dú)招生考務(wù)管理系統(tǒng)設(shè)計(jì)與分析[J].昆明冶金高等??茖W(xué)校學(xué)報(bào),2016,32(5):62-69.
[4] 彭騰.單獨(dú)招生管理系統(tǒng)的分析與設(shè)計(jì)[J].信息與電腦,2016,10(21):136-138.
[5] Lee Han Seong, Jo Bo Hyun, Kim Hui Jung. Plossom: Web-based Project Management System Using Spring Boot[J]. Journal of The Korea Internet of Things Society, 2016,2(3):17-24.
[6] 李洋.SSM框架在Web應(yīng)用開(kāi)發(fā)中的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2016,26(12):190-194.
[7] 林鈺杰,吳麗賢.基于整合框架的Web應(yīng)用系統(tǒng)開(kāi)發(fā)平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[J].電子設(shè)計(jì)工程,2016,24(20):62-65.
[8] 王鋒,李芳頌,劉曉華,等.敏捷開(kāi)發(fā)中的Web應(yīng)用開(kāi)發(fā)框架研究[J].數(shù)字技術(shù)與應(yīng)用,2016,34(8):114.
[9] 王建,羅政,張希,等.Web項(xiàng)目前后端分離的設(shè)計(jì)與實(shí)現(xiàn)[J].軟件工程,2020,23(4):22-24.
[10] 鄭逸凡.基于SSM框架的在線教學(xué)系統(tǒng)的設(shè)計(jì)[J].長(zhǎng)沙大學(xué)學(xué)報(bào),2019,34(2):41-44.
[11] 王天琦,王恒,王學(xué)明,等.基于TTS文語(yǔ)轉(zhuǎn)換的網(wǎng)頁(yè)播報(bào)平臺(tái)的研究與建設(shè)[J].信息技術(shù)與信息化,2019,43(1):37-39.
[12] 劉同斌,陳韜,武燕如.WEB語(yǔ)音告警軟件的設(shè)計(jì)與實(shí)現(xiàn)[J].機(jī)電信息,2019,18(24):142-143.
[13] 鄭榮緯,吳業(yè)毅.醫(yī)院檢驗(yàn)窗口實(shí)名制排隊(duì)系統(tǒng)的設(shè)計(jì)與應(yīng)用[J].電子設(shè)計(jì)工程,2016,22(24):116-118.
[14] 蔣愷.基于TTS的參會(huì)提醒系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].科技風(fēng),2019,31(5):5.
[15] 丁華,陳輝.基于WEB的上機(jī)考核系統(tǒng)中JQuery和Ajax技術(shù)的應(yīng)用[J].電子設(shè)計(jì)工程,2016,22(15):16-19.
[16] 劉焱.jQuery在平臺(tái)中的應(yīng)用開(kāi)發(fā)研究[J].信息系統(tǒng)工程,2019,31(1):91.
[17] 陳明珠,袁偉,陸進(jìn)城,等.基于Jquery的Web前端桌面應(yīng)用系統(tǒng)設(shè)計(jì)[J].福建電腦,2018,34(11):123;130.
[18] 周萍,趙娜,李慕.Bootstrap框架在響應(yīng)式Web設(shè)計(jì)中的應(yīng)用[J].軟件導(dǎo)刊,2017,16(6):135-137.