亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于B/S 模式的程序設(shè)計在線評測系統(tǒng)設(shè)計與實現(xiàn)

        2022-07-08 03:05:12祝小玲
        電子技術(shù)與軟件工程 2022年1期
        關(guān)鍵詞:數(shù)據(jù)庫用戶信息

        祝小玲

        (北海職業(yè)學(xué)院 廣西壯族自治區(qū)北海市 536000)

        目前我國教育形勢變化逐漸加劇,信息技術(shù)應(yīng)用已經(jīng)進(jìn)入成熟階段,高校在面臨全新教學(xué)要求的情況下,應(yīng)當(dāng)采取現(xiàn)代化信息技術(shù)建設(shè)措施,使評測流程能夠從傳統(tǒng)體系框架內(nèi)脫離,進(jìn)一步貼合新時代要求,達(dá)到提高工作效率目標(biāo)。通過利用B/S 模式建設(shè)的程序設(shè)計在線評測系統(tǒng),可以為教師與學(xué)生提供高度自動化的應(yīng)用服務(wù),有利于解決傳統(tǒng)評測體系存在的弊端問題,使評測工作能夠進(jìn)一步提高開展質(zhì)量與效率,為專業(yè)建設(shè)發(fā)展打下堅實基礎(chǔ)。

        1 系統(tǒng)應(yīng)用意義簡析

        目前系統(tǒng)的應(yīng)用價值能夠在程序設(shè)計評測環(huán)境中得到有效發(fā)揮作用,能夠進(jìn)一步創(chuàng)設(shè)理想評測條件,解決傳統(tǒng)體系下存在的負(fù)面問題,可以將試卷以數(shù)字化形式進(jìn)行存儲,可以有效節(jié)約紙質(zhì)資源的應(yīng)用,同時還能夠降低試卷出現(xiàn)污損或丟失的概率[1]。同時,在線評測試卷的題目可以進(jìn)行重復(fù)應(yīng)用,并根據(jù)網(wǎng)絡(luò)層面教學(xué)趨勢進(jìn)行靈活改動,能夠?qū)W(xué)生的實際能力開展客觀測試流程,具有優(yōu)越的應(yīng)用價值。此外,系統(tǒng)可以完成自動抽題任務(wù),能夠為教師提供直接閱卷的途徑,有利于工作效率提升,進(jìn)一步降低了教師的工作量級別,節(jié)約人力資源。

        2 系統(tǒng)可行性與需求分析

        2.1 可行性分析

        程序設(shè)計評測系統(tǒng)屬于無紙化在線應(yīng)用類型系統(tǒng),可以減少傳統(tǒng)出卷環(huán)節(jié),從而達(dá)到降低開支的目標(biāo)。在現(xiàn)有信息技術(shù)框架下,系統(tǒng)的應(yīng)用價值相對較高,同時開發(fā)成本較低、建設(shè)周期短,能夠以少量資源應(yīng)對大量學(xué)生。同時,系統(tǒng)的界面架構(gòu)能夠利用軟件平臺進(jìn)行高效部署,完成處理的界面用戶友好性高,符合實際應(yīng)用標(biāo)準(zhǔn),能夠為傳統(tǒng)評測流程提供改革途徑。

        2.2 需求分析

        日常程序設(shè)計評測工作需求較為復(fù)雜,需要針對相關(guān)需求進(jìn)行詳細(xì)分析,為后續(xù)功能模塊的部署提供重要參考。在系統(tǒng)應(yīng)用過程中,主要提供對java、C 兩種語言代碼程序處理功能,具有用戶管理模塊,包括普通用戶(學(xué)生)和超級管理員(教師),將超級管理員權(quán)限與普通用戶權(quán)限進(jìn)行分割處理,使相關(guān)操作能夠從架構(gòu)層面隔離,避免出現(xiàn)越權(quán)現(xiàn)象;普通用戶可進(jìn)行注冊、登錄和修改個人信息功能;超級管理員具有普通用戶和題庫增刪改查操作管理功能,題庫管理可以為超級管理員修改與調(diào)整評測試題內(nèi)容提供重要工具。為降低題庫建設(shè)時間,縮短處理周期,系統(tǒng)支持題庫導(dǎo)入功能,使其能夠合理利用其它應(yīng)用題庫文件,快速完成部署流程;以及比賽模塊,包括比賽試題管理功能及評測功能。除此之外,在線評測系統(tǒng)查看排行榜及比賽狀態(tài)功能具有重要應(yīng)用意義,其處理需求相對較高,是核心模塊。因此,系統(tǒng)提供成績自動統(tǒng)計整合功能,自動快速統(tǒng)計分析成績狀態(tài),要求防止用戶抄襲作弊行為檢測,為后續(xù)教學(xué)提供重要參考。同時,成績還需要與個人信息進(jìn)行整合,并利用大數(shù)據(jù)或云計算等形式,進(jìn)一步挖掘相關(guān)內(nèi)容價值,達(dá)到理想應(yīng)用目標(biāo)。

        3 系統(tǒng)設(shè)計實現(xiàn)研究

        3.1 開發(fā)架構(gòu)

        在線評測系統(tǒng)通??蓱?yīng)用C/S 或B/S 兩種基礎(chǔ)架構(gòu),由于C/S 架構(gòu)模式在應(yīng)用場景中需要利用獨立客戶端進(jìn)行處理,完成開發(fā)操作、維護(hù)操作并落實跨平臺建設(shè),因此整體工作量相對較高。在互聯(lián)網(wǎng)信息技術(shù)應(yīng)用逐漸成熟的背景下,B/S 架構(gòu)模式為最佳在線評測系統(tǒng)應(yīng)用類型,因此需要合理利用其基礎(chǔ)優(yōu)勢,確保在線評測活動能夠正常進(jìn)行。B/S 架構(gòu)模式本身屬于C/S 架構(gòu)模式的子類延伸,其需要通過平臺瀏覽器軟件進(jìn)行訪問,獲得相關(guān)內(nèi)容并完成數(shù)據(jù)傳輸。相對于傳統(tǒng)方案,B/S 可以將WEB 服務(wù)技術(shù)作為應(yīng)用核心,使整體跨平臺特性得到完整發(fā)揮[4]。通過將服務(wù)器分割為數(shù)據(jù)庫、web、判題機三個部分組成,用戶可以通過web 瀏覽器調(diào)用相關(guān)接口,強化數(shù)據(jù)處理質(zhì)量,使后續(xù)解釋反饋工作能夠快速進(jìn)行,有利于強化在線評測系統(tǒng)靈活性,系統(tǒng)總體架構(gòu)圖如圖1。

        圖1:系統(tǒng)總體架構(gòu)圖

        3.2 設(shè)計實現(xiàn)技術(shù)

        3.2.1 spring 框架技術(shù)

        B/S 架構(gòu)模式在線評測系統(tǒng)設(shè)計過程中,需要應(yīng)用多種技術(shù)類型,確保整體運行效果能夠達(dá)到理想標(biāo)準(zhǔn)。在編寫底層架構(gòu)時,需要利用WebWork 作為基礎(chǔ)組件應(yīng)用平臺,通過借助Spring MVC 提供的 Controller 完成攔截用戶請求模塊的編寫,需要合理利用該技術(shù)將業(yè)務(wù)處理邏輯從傳統(tǒng)體系中剝離,避免服務(wù)器承受過大壓力。編寫過程中,服務(wù)器在接收到用戶請求前,首先需要配置相關(guān) DispatcherServlet,之后再編寫 Controller。在完成解析后,便可采用過濾模塊分發(fā)對應(yīng)處理請求,使邏輯系統(tǒng)能夠完成信息處理操作,并產(chǎn)生響應(yīng)信息,為前端用戶提供操作選項。通過編寫ErrorController 方法,用戶對異常的捕獲和處理 Controller,并返回錯誤的頁面。

        3.2.2 AJAX 異步請求技術(shù)

        異步請求技術(shù)對在線評測系統(tǒng)具有重要影響意義,其能夠有效解決經(jīng)典WEB 應(yīng)用存在的延時弊端問題,對傳統(tǒng)等待插入響應(yīng)的架構(gòu)進(jìn)行改進(jìn),達(dá)到異步處理目標(biāo),有效提高刷新效率。在應(yīng)用過程中,其需要將JS 與HTTP 請求相互結(jié)合,利用瀏覽器軟件平臺內(nèi)部的XML HTTP 請求機制,將對象以異步方式發(fā)送至服務(wù)器,達(dá)到傳輸與解析目標(biāo)。

        3.2.3 數(shù)據(jù)庫連接池技術(shù)

        通常情況下,在線評測系統(tǒng)存在時間限制需求,超過時間段后所有答題應(yīng)當(dāng)終止并立即提交試卷。在這種需求下,為實現(xiàn)相關(guān)目標(biāo),采用數(shù)據(jù)庫連接池技術(shù)進(jìn)行設(shè)計。此類技術(shù)的主要原因與登錄階段、提交階段服務(wù)器壓力較大存在密切關(guān)聯(lián),為避免出現(xiàn)服務(wù)端導(dǎo)致整體系統(tǒng)無法正常運轉(zhuǎn)的情況,工作效率低,需要利用數(shù)據(jù)庫連接池技術(shù)對相關(guān)架構(gòu)進(jìn)行改進(jìn),使系統(tǒng)并發(fā)性得到顯著提升,降低請求耗時與資源消耗級別,滿足快速響應(yīng)標(biāo)準(zhǔn)。數(shù)據(jù)庫連接池技術(shù)需要將數(shù)據(jù)源與JNDI 進(jìn)行綁定處理,使系統(tǒng)在啟動初始化階段能夠自動應(yīng)用相關(guān)配置文件處理連接池,達(dá)到建立目標(biāo)。在用戶端發(fā)送連接處理請求時,服務(wù)系統(tǒng)需要首先對數(shù)據(jù)池進(jìn)行遍歷搜尋,獲得對應(yīng)空閑連接對象,并將其返回至用戶端[4]。在用戶端需要切斷連接的情況下,系統(tǒng)可以釋放連接對象,使其能夠重新返回數(shù)據(jù)池內(nèi)部,等待下一請求流程。通過這種技術(shù),可以有效改善系統(tǒng)并發(fā)性能,達(dá)到處理架構(gòu)目標(biāo)。

        3.3 功能模塊設(shè)計

        功能模塊屬于線上評測系統(tǒng)的核心組成部分,包括用戶模塊、后臺管理模塊、在線評測模塊、比賽測試模塊、公告模塊共五大部分組成,用戶模塊主要分為普通用戶和超級管理用戶,普通用戶自行注冊、登錄和修改個人信息等功能,超級管理用戶主要對普通用戶進(jìn)行增刪改管理,以及用戶權(quán)限設(shè)置等功能;后臺管理模塊主要包括創(chuàng)建修改比賽,實現(xiàn)題庫增刪改查,公告發(fā)布、修改、刪除等功能;在線評測模塊主要包括查看題庫、提交答案、查看排行榜以及比賽狀態(tài)等功能,是系統(tǒng)核心模塊;系統(tǒng)功能模塊如圖2 所示。

        圖2:系統(tǒng)功能模塊

        3.4 數(shù)據(jù)庫設(shè)計

        數(shù)據(jù)庫可以為在線評測系統(tǒng)提供重要運行支持,是連接系統(tǒng)web 服務(wù)器和判題機服務(wù)器的橋梁,該系統(tǒng)選用MYSQL 作為數(shù)據(jù)庫平臺,主要有用戶信息表、提交信息表、題庫信息表、登錄信息表、比賽狀態(tài)信息表、排名信息表、公告信息表等數(shù)據(jù)表,數(shù)據(jù)表如表1 所示。系統(tǒng)用戶信息表主要存儲用戶名、密碼、做題正確數(shù)量、提交次數(shù)、正確率等信息;提交信息表主要存儲提交用戶名、題編號、運行結(jié)果、提交時間、運行時間以及運行內(nèi)存等信息;題庫信息表存儲題編號,題標(biāo)題、題內(nèi)容、題類別、題難度以及模擬測試次數(shù)等信息;登錄信息表存儲用戶登錄情況,包括用戶名、密碼、登錄時間,目的了解訪問系統(tǒng)人數(shù);比賽狀態(tài)信息表存儲比賽題庫信息、比賽開始時間、結(jié)束時間;排名信息表存儲做題數(shù)量,做題用時信息,以及排名信息;公告信息表存儲公告標(biāo)題、內(nèi)容、時間等信息。系統(tǒng)數(shù)據(jù)庫ER 圖如圖3 所示。

        圖3:數(shù)據(jù)庫ER 圖

        表1:系統(tǒng)數(shù)據(jù)表

        3.5 系統(tǒng)工作進(jìn)程

        在線上評測系統(tǒng)應(yīng)用過程中,判題機是系統(tǒng)核心服務(wù)進(jìn)程,主要功能是訪問web 服務(wù)器和數(shù)據(jù)庫服務(wù)器的任務(wù)隊列,隨時提取判題隊列,工作流程圖如圖4 所示。評判原理是用戶利用瀏覽器軟件平臺的代碼上傳控制器,即submitAction。控制其在獲得相關(guān)請求內(nèi)容后可以將代碼進(jìn)行自動注入處理,使其與服務(wù)器運行類整合,達(dá)到單線程操作目標(biāo)。隨后,需要調(diào)用命令工具的exeCmd 方法,完成用戶提交程序代碼的編譯處理流程。編譯階段需要注重系統(tǒng)實時狀態(tài),并將程序控制開關(guān)進(jìn)行規(guī)范化處理,為用戶反饋多種應(yīng)用結(jié)果。若程序編譯處理失效,則自動結(jié)束相關(guān)流程,并將錯誤信息反饋至用戶層面。若程序編譯成功,則繼續(xù)調(diào)用classloader 將編譯代碼完成加載,最終借助futuretask 與反射處理體系對main 模塊進(jìn)行處理,達(dá)到執(zhí)行目標(biāo)[5]。系統(tǒng)對輸出結(jié)果與數(shù)據(jù)庫內(nèi)設(shè)定的標(biāo)準(zhǔn)結(jié)果進(jìn)行對比,若對比結(jié)果正確則反饋通過信息,若對比結(jié)果錯誤則反饋答案異常信息。在執(zhí)行操作階段,若程序出現(xiàn)內(nèi)存溢出問題,則需要自動向用戶端反饋內(nèi)存溢出錯誤信息。若運行時間超出限制標(biāo)準(zhǔn),則需要返回超時錯誤信息。

        圖4:進(jìn)程流程圖

        3.6 核心功能設(shè)計實現(xiàn)

        在線上評測系統(tǒng)應(yīng)用過程中,核心功能設(shè)計實現(xiàn)需要滿足程序設(shè)計評測的基礎(chǔ)需求。因此系統(tǒng)功能架構(gòu)應(yīng)當(dāng)重視基礎(chǔ)組成,確保其能夠以平衡狀態(tài)進(jìn)行應(yīng)用。線上評測系統(tǒng)目前主要支持 Java、C 的編譯,包含頂部菜單區(qū)域,對公告內(nèi)容進(jìn)行輪播處理,題目模塊、比賽模塊、成績數(shù)據(jù)分析等操作,為用戶提供多樣化的服務(wù)結(jié)構(gòu)。在用戶端利用瀏覽器發(fā)送對應(yīng)請求內(nèi)容后,首先對主要動作類請求進(jìn)行處理,隨后調(diào)用相關(guān)處理對象方法,使信息可以動態(tài)反饋至用戶層面。核心功能設(shè)計實現(xiàn)的邏輯分析主要有以下幾點:

        3.6.1 判題模塊

        整個系統(tǒng)核心所在是判題部分,該系統(tǒng)把判題服務(wù)單獨出來,這樣既有利于增加判題元素加快判斷速度,用戶發(fā)送代碼程序請求給RabbitMQ,形成可擴(kuò)展的worker 判斷元素,提高判斷效率。通過派生出一個進(jìn)程,設(shè)置時間、內(nèi)容用量等限制,再利用ptrace 進(jìn)行監(jiān)控,限制系統(tǒng)調(diào)用次數(shù),解決安全問題,利用開源的應(yīng)用容器引擎Docker 擴(kuò)展設(shè)置計算時間、內(nèi)存的使用量、程序代碼等參數(shù),編譯判斷程序代碼。Docker 編譯 Java 命令代碼是Docker run --rm -u root -v /oj:/oj openjdk:8 /bin/sh -c cd /oj&&javac Main.java,編譯 C 命令代碼是Docker run --rm -u root -v /oj:/oj openjdk:8 /bin/sh -c cd /oj&&g++ Main.cpp。

        3.6.2 賬號安全驗證

        Token 由header 密文、payload 密文、Signature 簽名三部分組成,用戶登錄發(fā)送請求,生成一個由Base64 解密Token,服務(wù)端把Token 的Signature 簽名存于redis 和服務(wù)器的數(shù)據(jù)庫中進(jìn)行HS256 運算,運算得出的簽名與Token 自帶的簽名進(jìn)行比較,如一致Token 合法,否則原文被修改。另利用Base64 解密payload 密文,授權(quán)時間與當(dāng)前時間比較判斷是否過期,保證賬號安全驗證通過。

        3.6.3 讀取導(dǎo)入文件

        根據(jù)學(xué)生解題情況自動生成績報表并支持導(dǎo)出功能,首先創(chuàng)建模板控制器。把文件傳輸?shù)揭晥D,DownImport Template()中的參數(shù)要與視圖的或?qū)С龅奈募恢隆S胹tring 獲取表的路徑,文件轉(zhuǎn)化成流才能傳輸。導(dǎo)入的文件也轉(zhuǎn)化成流,然后進(jìn)行判斷,判斷是否讀取到文件,讀取不到進(jìn)行提示,否則文件返回,獲取到文件。下載導(dǎo)入模板,事先要下載模板填入數(shù)據(jù),就可以進(jìn)行讀取數(shù)據(jù)。主要是利用 POI 讀取 Excel 文件,支持 xls、xlsx 格式。操作的順序與 Excel 的結(jié)構(gòu)基本一致,按順序逐次獲取Workbook →Sheet →Column →Row。其中Row 的內(nèi)容可是多種類型,例如數(shù)字、字符串類型輸出。最后返回獲取數(shù)據(jù),關(guān)鍵代碼如下:

        3.6.4 檢測抄襲作弊

        主要是利用 K-means 檢測代碼抄襲作弊情況,K-means是一種常用的聚類算法,具體原理初始化k 個樣本數(shù)目,再針對每個樣本Xi 計算到距離最小的聚類中心的應(yīng)用類中,每個類aj 根據(jù)公式計算聚類中心,聚類中心公式如圖5 所示,再利用WEKA 數(shù)據(jù)挖掘修改數(shù)據(jù)源,配置 MySQL 數(shù)據(jù)庫連接,根據(jù)K-means 的流程,設(shè)置相關(guān)對象參數(shù),執(zhí)行算法。關(guān)鍵代碼如下:

        圖5:聚類中心公式

        4 結(jié)論

        綜上所述,B/S 架構(gòu)在高校程序在線評測系統(tǒng)設(shè)計過程中具有重要應(yīng)用意義。對在線評測系統(tǒng)的功能進(jìn)行了全面設(shè)計,基本完成前期的分析和設(shè)計,為了能夠體現(xiàn)系統(tǒng)整體效果,需進(jìn)一步加強相關(guān)更細(xì)致的研究,實現(xiàn)理想系統(tǒng)平臺目標(biāo),減少在性能和安全方面的缺陷。

        猜你喜歡
        數(shù)據(jù)庫用戶信息
        訂閱信息
        中華手工(2017年2期)2017-06-06 23:00:31
        數(shù)據(jù)庫
        財經(jīng)(2017年2期)2017-03-10 14:35:35
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        數(shù)據(jù)庫
        財經(jīng)(2016年15期)2016-06-03 07:38:02
        關(guān)注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        數(shù)據(jù)庫
        財經(jīng)(2016年3期)2016-03-07 07:44:46
        數(shù)據(jù)庫
        財經(jīng)(2016年6期)2016-02-24 07:41:51
        如何獲取一億海外用戶
        展會信息
        中外會展(2014年4期)2014-11-27 07:46:46
        久久精品国产精品国产精品污| 亚洲无线码1区| 在线观看免费人成视频| 中文字幕第一页亚洲| 少妇被粗大猛进进出出| 毛片在线播放亚洲免费中文网| 一区二区三区在线视频爽| 成av人片一区二区久久| 丰满少妇人妻久久久久久| 中出内射颜射骚妇| 色噜噜狠狠色综合欧洲| 日本韩国三级在线观看| 伊甸园亚洲av久久精品| 国产成人无码av在线播放dvd| 久久九九有精品国产尤物| 美女偷拍一区二区三区| 国产亚洲精品av一区| 久久久老熟女一区二区三区| 久久频道毛片免费不卡片| 日韩人妖一区二区三区| 五月开心婷婷六月综合| 成人妇女免费播放久久久| 亚洲精品美女自拍偷拍| 一区二区三区日本视频| 人人妻人人澡人人爽国产一区| 999久久久国产精品| 国产精彩视频| 国产91久久精品成人看网站| 人人妻人人澡人人爽超污| 久久久久无码精品国产app| 国产精品亚洲欧美天海翼| 人妻无码中文专区久久AV| 精品午夜中文字幕熟女| 亚洲av日韩av激情亚洲| 丰满人妻被黑人中出849| 成人无码a级毛片免费| 久久日本视频在线观看| 国产又色又爽又黄的| 综合网在线视频| 日本av在线精品视频| 国产人成精品免费久久久 |