• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于RestAPI的在線題庫(kù)組卷系統(tǒng)的開(kāi)發(fā)

    2021-01-12 16:25:46李常寶
    數(shù)字通信世界 2021年12期
    關(guān)鍵詞:題庫(kù)數(shù)據(jù)表試卷

    李常寶

    (山西警官職業(yè)學(xué)院,山西 太原 030027)

    1 在線題庫(kù)組卷系統(tǒng)與傳統(tǒng)題庫(kù)組卷系統(tǒng)的優(yōu)劣比較

    當(dāng)前,常用的傳統(tǒng)在線題庫(kù)組卷系統(tǒng)一般有三種模式:傳統(tǒng)Web系統(tǒng),單機(jī)版系統(tǒng),手工Excel操作。

    傳統(tǒng)Web系統(tǒng)的安全性比較差,網(wǎng)址中,網(wǎng)頁(yè)中容易泄露一些試題敏感數(shù)據(jù);單機(jī)版系統(tǒng)缺少網(wǎng)絡(luò)功能,對(duì)于不同地域的用戶來(lái)說(shuō),很不方便;手工Excel操作,人工操作容易出錯(cuò),而且安全性也不高。

    綜合以上幾點(diǎn),本文所開(kāi)發(fā)的在線題庫(kù)組卷系統(tǒng)能夠有效解決上述問(wèn)題。采用Rest標(biāo)準(zhǔn)格式的WebAPI能夠隱藏服務(wù)器資源路徑及參數(shù),提高安全性;采用HUSH FrameWork[1],可以有效提高開(kāi)發(fā)效率;采用B/S結(jié)構(gòu),可以充分發(fā)揮網(wǎng)絡(luò)的便捷性,不同地域的用戶也可以使用。隨機(jī)出題算法,也可以根據(jù)用戶需求,靈活調(diào)整與設(shè)置,保證公平與合理。

    2 在線題庫(kù)組卷系統(tǒng)使用的關(guān)鍵技術(shù)

    本論文所研究的在線題庫(kù)組卷系統(tǒng)是基于以下技術(shù)實(shí)現(xiàn):

    (1)基于Rest標(biāo)準(zhǔn)格式開(kāi)發(fā)的一套WebAPI。 Rest是一套互聯(lián)網(wǎng)應(yīng)用程序的API設(shè)計(jì) 規(guī)范。它的核心原則是將你的API拆分為邏輯上的資源。這些資源通過(guò)HTTP被操作(GET, POST, PUT, DELETE)。比 如:在本系統(tǒng)中,資源歸類為試題、用戶、課程等資源。各種操作歸類為GET, DELETE, ADD,MODIFY等操作。舉例:http://localhost:8001/ course/GetAllSt, http://localhost:8001/course/ DeleteStByNo/st001。

    (2)前臺(tái)使用HTML+CSS+JQuery+Smarty3。HTML+CSS+JQuery+Smarty3是當(dāng)前主流的Web應(yīng)用程序前端開(kāi)發(fā)套裝。HTML+CSS是網(wǎng)頁(yè)最基本的組成。jQuery是一個(gè)快速、簡(jiǎn)潔的JavaScript框架,使用它可以加速開(kāi)發(fā)進(jìn)程。Smarty3是一個(gè)PHP模板引擎技術(shù),它分離了邏輯代碼和外在的內(nèi)容,提供了一種易于管理和使用的方法,用來(lái)將原本與HTML代碼混雜在一起PHP代碼邏輯分離,使用它,可以讓代碼更加簡(jiǎn)潔,層次分明。

    (3)后臺(tái)使用基于HUSH FrameWork的PHP框架。當(dāng)前Web應(yīng)用程序后端開(kāi)發(fā)有很多流行的框架,而本人選取的是HUSH FrameWork[2],它是一個(gè)基于ZendFramework[3]和Smarty的強(qiáng)大的面向企業(yè)應(yīng)用的PHP框架,是一個(gè)簡(jiǎn)化版的ZendFramework,正好適用于中小型的Web應(yīng)用程序。

    (4)HTTP服務(wù)器使用XAMPP的Apache。XAMPP是一個(gè)基于Windows操作系統(tǒng)的后臺(tái)軟件工具集。其中的apache是用于網(wǎng)站發(fā)布的一個(gè)Web服務(wù)器軟件。

    (5)數(shù)據(jù)庫(kù)服務(wù)器使用XAMPP的Mysql。本系統(tǒng)使用的后臺(tái)數(shù)據(jù)庫(kù)管理系統(tǒng)是mysql。

    3 在線題庫(kù)組卷系統(tǒng)的三層架構(gòu)設(shè)計(jì)

    所謂三層軟件體系架構(gòu),就是在客戶端瀏覽器與服務(wù)器的數(shù)據(jù)庫(kù)之間加入了一個(gè)“中間層”,也叫組件層。這里所說(shuō)的三層結(jié)構(gòu),不是指物理上機(jī)器上的三層,不是簡(jiǎn)單地放置三臺(tái)計(jì)算機(jī)就是三層軟件體系架構(gòu),也不僅僅有瀏覽器才是三層軟件體系架構(gòu),三層是指邏輯的三層,即使這三層都放置到一臺(tái)機(jī)器上。

    3.1 表現(xiàn)層

    本系統(tǒng)的表現(xiàn)層主要由后臺(tái)管理和前臺(tái)管理兩部分網(wǎng)頁(yè)組成。其中,后臺(tái)表示層主要由六大菜單項(xiàng)組成:系統(tǒng)概況、試題管理、組卷管理、用戶管理、成績(jī)管理、智能閱卷。

    3.2 業(yè)務(wù)邏輯層

    主要是處理業(yè)務(wù)方面的邏輯,如判斷用戶輸入的內(nèi)容是否符合要求,負(fù)責(zé)把用戶輸入的數(shù)據(jù)傳輸給數(shù)據(jù)訪問(wèn)層,并把來(lái)自數(shù)據(jù)訪問(wèn)層的數(shù)據(jù)返回給用戶。其中:

    (1)系統(tǒng)概況:由系統(tǒng)模塊SystemService.php提供本系統(tǒng)的各項(xiàng)基本參數(shù)的設(shè)定。

    (2)試題管理:由系統(tǒng)模塊ShitiService.pph提供對(duì)本系統(tǒng)中試題的增刪改查功能的設(shè)定。

    (3)組卷管理:由試題模塊StService.php提供本系統(tǒng)試題導(dǎo)入,組卷方式的設(shè)置、組卷、導(dǎo)出為word文檔等功能。

    (4)用戶管理:由系統(tǒng)模塊UserService.pph提供對(duì)本系統(tǒng)中各種角色用戶的增刪改查的操作以及權(quán)限的設(shè)定。

    (5)成績(jī)管理:由系統(tǒng)模塊ScoreService.pph提供對(duì)本系統(tǒng)中用戶成績(jī)的操作。

    (6)智能閱卷:由系統(tǒng)模塊StaticService.pph提供對(duì)本系統(tǒng)中考生成績(jī)的統(tǒng)計(jì)與分析操作。

    3.3 數(shù)據(jù)訪問(wèn)層

    主要是對(duì)原始數(shù)據(jù)的操作層,只有它能夠直接訪問(wèn)數(shù)據(jù)庫(kù),對(duì)數(shù)據(jù)庫(kù)進(jìn)行增、刪、改、查的操作,上面的兩個(gè)層(表現(xiàn) 層和邏輯層)都不能直接訪問(wèn)數(shù)據(jù)庫(kù)。數(shù)據(jù)訪問(wèn)層主要使用的是HUSH FrameWork中的數(shù)據(jù)庫(kù)操作類庫(kù)和XAMPP中的mysql數(shù)據(jù)庫(kù)。

    4 在線題庫(kù)組卷系統(tǒng)的主要功能模塊的實(shí)現(xiàn)

    4.1 系統(tǒng)概況模塊的功能

    4.1.1 試題統(tǒng)計(jì)

    主要是將本系統(tǒng)中各種類型、各種難度、各種模塊的試題進(jìn)行統(tǒng)計(jì)。

    具體實(shí)現(xiàn)步驟如下:

    (1)數(shù)據(jù)訪問(wèn)層:試題本身存在類型、難度、模塊的區(qū)別,在數(shù)據(jù)庫(kù)中相應(yīng)地創(chuàng)建對(duì)應(yīng)的數(shù)據(jù)表,而在試題表中,每道試題都有對(duì)應(yīng)的外鍵進(jìn)行管理。

    (2)邏輯層:在stService.php中創(chuàng)建getStNu mberB ByType(),getStNumberBydifficult(),getStN umberByModule()方法相應(yīng)地統(tǒng)計(jì)類型,難度和 模塊的試題數(shù)量。

    (3)表現(xiàn)層:創(chuàng)建sysinfo.html頁(yè)面,在這個(gè)頁(yè)面里,使用圖表的方式顯示數(shù)據(jù),這樣更加直觀。

    4.2 用戶管理模塊的功能

    4.2.1 用戶注冊(cè)

    新增用戶的功能,具體實(shí)現(xiàn)步驟如下:

    (1)在本系統(tǒng)的數(shù)據(jù)訪問(wèn)層中,也就是數(shù)據(jù)庫(kù)EXAM中,創(chuàng)建用戶表user。

    (2)在本系統(tǒng)的邏輯層,新建針對(duì)用戶表user的操作類userService.php。并在其中創(chuàng)建AddNewUser Action(),實(shí)現(xiàn)新增用戶的功能,要求用戶輸入2次密碼,并保持一致,而且要MD5加密后保存在數(shù)據(jù)表中。

    (3)在本系統(tǒng)的表現(xiàn)層,新建registry.html,提供面向用戶的圖形界面接口,用于注冊(cè)新用戶。

    4.2.2 用戶登錄

    實(shí)現(xiàn)用戶登錄系統(tǒng)的功能。具體實(shí)現(xiàn)步驟如下:

    (1)在本系統(tǒng)的數(shù)據(jù)訪問(wèn)層中,已經(jīng)創(chuàng)建了用戶表user,要求其中有示例數(shù)據(jù)。

    (2)在本系統(tǒng)的邏輯層,在userService.php中創(chuàng)建LoginAction(),將用戶輸入的用戶名和密碼與數(shù)據(jù)表中的用戶逐個(gè)對(duì)比,如果有相同的,則正常登錄系統(tǒng);如果沒(méi)有相同的,則提示用戶名或者密碼有誤。

    (3)在本系統(tǒng)的表現(xiàn)層,新建login.html,提供面向用戶的圖形界面接口,用于實(shí)現(xiàn)用戶登錄。

    4.2.3 用戶查詢

    實(shí)現(xiàn)根據(jù)用戶名查詢用戶的功能。

    具體實(shí)現(xiàn)步驟如下:

    (1)在本系統(tǒng)的數(shù)據(jù)訪問(wèn)層中,已經(jīng)創(chuàng)建了用戶表user,要求其中有示例數(shù)據(jù)。

    (2)在本系統(tǒng)的邏輯層中,在userService.php中創(chuàng)建SearchUserByNameAction(),將用戶輸入的用戶名和數(shù)據(jù)表中的用戶逐個(gè)對(duì)比,如果有相同的,則將該用戶信息顯示到網(wǎng)頁(yè)中;如果沒(méi)有相同的,則提示無(wú)此用戶。

    (3)在本系統(tǒng)的表現(xiàn)層,新建searchUserBy Name.html,提供面向用戶的圖形界面接口,用于實(shí)現(xiàn)用戶查找。

    4.2.4 用戶刪除

    實(shí)現(xiàn)根據(jù)用戶名刪除用戶的功能。

    具體實(shí)現(xiàn)步驟如下:

    (1)在本系統(tǒng)的數(shù)據(jù)訪問(wèn)層中,已經(jīng)創(chuàng)建了用戶表user,要求其中有示例數(shù)據(jù)。

    (2)在本系統(tǒng)的邏輯層,在userService.php 中創(chuàng)建DeleteUserByNameAction(),將用戶輸入的用戶名和數(shù)據(jù)表中的用戶逐個(gè)對(duì)比,如果有相同的,則將該用戶從數(shù)據(jù)表中刪除,并將刪除成功的提示信息顯示到網(wǎng)頁(yè)中;如果沒(méi)有相同的,則提示無(wú)此用戶。

    (3)在本系統(tǒng)的表現(xiàn)層,新建deleteUserBy Name.html,提供面向用戶的圖形界面接口,用于實(shí)現(xiàn)用戶刪除。

    4.3 組卷管理模塊的功能

    4.3.1 試題導(dǎo)入

    主要是將用戶提供的Excel模板的題庫(kù)導(dǎo)入到本系統(tǒng)的mysql數(shù)據(jù)庫(kù)中。

    具體實(shí)現(xiàn)步驟如下:

    (1)在本系統(tǒng)的mysql數(shù)據(jù)庫(kù)中創(chuàng)建數(shù)據(jù)庫(kù)EXAM,創(chuàng)建試題表st、課程表course、系統(tǒng)信息表sysinfo、試卷表exampaper。

    (2)在本系統(tǒng)的邏輯層,新建針對(duì)試題庫(kù)的數(shù)據(jù)庫(kù)操作類stService.php。并在其中使用PHPExcel 類庫(kù),創(chuàng)建導(dǎo)入試題的方法importStFromExcel()。

    (3)在表現(xiàn)層,創(chuàng)建inport_excel_exam.html 文件,讓用戶瀏覽資源管理器,找到excel格式的試題庫(kù),實(shí)現(xiàn)導(dǎo)入。

    4.3.2 組卷設(shè)置

    主要是將用戶提供的組卷方式提供可視化的網(wǎng)頁(yè)操作界面,方便用戶設(shè)置。

    具體操作步驟如下:

    在表現(xiàn)層新建網(wǎng)頁(yè)exam_setting.html,創(chuàng)建設(shè)置所需的控件。

    在邏輯層的stService.php中增加組卷設(shè)置方法exampaperAction.php。

    在表現(xiàn)層創(chuàng)建exam.html,設(shè)置組卷規(guī)則,讓用戶根據(jù)需求選擇。

    4.3.3 生成和導(dǎo)出試卷

    主要是根據(jù)組卷方式生成統(tǒng)一格式的Word試卷,方便用戶打印。

    具體操作步驟如下:

    (1)在網(wǎng)站相應(yīng)的文件夾內(nèi),設(shè)計(jì)一個(gè)統(tǒng)一格式的Word試卷模板,在相應(yīng)試卷的試題位置設(shè)置 PHP替換變量。

    (2)在邏輯層的stService.php中增加試卷生成方法outputWord.php,實(shí)現(xiàn)試題獲取,組卷,導(dǎo)入模板,生成試卷的功能。

    (3)在表現(xiàn)層,創(chuàng)建output_word_exam.html 文件,實(shí)現(xiàn)導(dǎo)出功能,直接將Word格式的試卷,從服務(wù)器端下載到瀏覽器設(shè)定的目錄位置。

    4.4 在線考試模塊的功能

    4.4.1 在線考試

    主要是根據(jù)用戶的在線考試需求,生成相應(yīng)的在線考試試卷,并允許考生考試。

    具體實(shí)現(xiàn)步驟如下:

    (1)在本系統(tǒng)的數(shù)據(jù)訪問(wèn)層中,已經(jīng)創(chuàng)建了試卷表exampater,其中存放用戶生成的在線考試試卷。

    (2)在本系統(tǒng)的邏輯層,新建針對(duì)試卷表的數(shù)據(jù)庫(kù)操作類examonlineService.php。該類的主要功能根據(jù)用戶在表現(xiàn)層的需求,隨機(jī)抽取試題,并生成在線試卷。

    (3)在表現(xiàn)層,創(chuàng)建exam_online.html文件,根據(jù)用戶輸入的考試名稱,考試時(shí)間及試題,生成頁(yè)面,并要求考生逐題回答。

    4.4.2 成績(jī)統(tǒng)計(jì)

    主要是根據(jù)用戶的在線考試情況,統(tǒng)計(jì)成績(jī)。

    具體實(shí)現(xiàn)步驟如下:

    (1)在本系統(tǒng)的數(shù)據(jù)訪問(wèn)層中,創(chuàng)建試卷成績(jī)表score,用于存放考生的試卷成績(jī)。

    (2)在本系統(tǒng)的邏輯層,新建針對(duì)成績(jī)表的數(shù)據(jù)庫(kù)操作類scoreService.php。該類的主要功能根據(jù)用戶在線考試情況,計(jì)算成績(jī)。

    (3)在表現(xiàn)層,創(chuàng)建score.html文件,輸出用戶的成績(jī)。

    5 下一步的改進(jìn)

    在線題庫(kù)組卷系統(tǒng)的設(shè)計(jì)流程和實(shí)現(xiàn)方法及框架還有幾點(diǎn)需要改進(jìn)。

    (1)智能閱卷功能仍然不夠強(qiáng)大,對(duì)試題的分析仍然僅限于簡(jiǎn)單的計(jì)數(shù)。下一步,需要增加圖形化的統(tǒng)計(jì)與分析功能。

    (2)試卷的出題策略,還有待于進(jìn)一步完善。

    猜你喜歡
    題庫(kù)數(shù)據(jù)表試卷
    “勾股定理”優(yōu)題庫(kù)
    “軸對(duì)稱”優(yōu)題庫(kù)
    湖北省新冠肺炎疫情數(shù)據(jù)表
    黨員生活(2020年2期)2020-04-17 09:56:30
    “軸對(duì)稱”優(yōu)題庫(kù)
    “整式的乘法與因式分解”優(yōu)題庫(kù)
    基于列控工程數(shù)據(jù)表建立線路拓?fù)潢P(guān)系的研究
    Module5 A Trip Along the Three Gorges
    Module5 Great People and Great Inventions of Ancient China
    Module 4 Sandstorms in Asia
    Module 1 Europe
    依兰县| 赣榆县| 城市| 财经| 商水县| 宜都市| 舟曲县| 马山县| 镇坪县| 家居| 沁源县| 富民县| 琼中| 响水县| 秦安县| 安庆市| 上饶县| 蒙自县| 武功县| 新津县| 明水县| 内乡县| 新和县| 万盛区| 枣强县| 华安县| 尖扎县| 五大连池市| 台东市| 介休市| 滨州市| 临沂市| 临武县| 临湘市| 芜湖县| 大兴区| 南靖县| 洪江市| 龙泉市| 西乌| 寻甸|