一、引言
隨著信息技術的飛速發展,教育信息化成為現代教育改革的重要方向之一,各級各類學校不斷擴充各種信息管理系統,用于管理學校的各項工作[]。在線考試作為教育信息化的重要組成部分,不僅能夠提高自開課考試的效率和透明度,還能減輕輔導教師的工作負擔。自開課是指在國開學習網中沒有增設具體考核方式、地市級開大可以通過自主命題開發貼合學生和學校需求的考核資源,旨在促進教學創新和多樣化發展[2。然而,傳統的在線考試系統往往功能單一,難以滿足學校自開課的靈活需求。為此,本文設計并實現了一種基于 SpringBoot的自開課網上考試管理系統。該系統旨在通過先進的技術手段,提供一套功能全面、高效可靠的在線考試解決方案。
二、系統需求分析與體系結構設計
(一)系統的功能需求
該系統需要解決學生的在線考試問題,包括存儲用戶、試題、考試的相關信息,并維護這些信息之間的對應關系結構。具體實現的功能如下:
1.權限認證管理
在該系統中需要存在三種不同的權限角色,分別是學生、教師和管理員,這三者分別有不同的操作權限和功能。
3.信息維護
教師和管理員可以維護題庫信息、試卷信息、考試情況信息和學生信息。
(二)功能模塊設計
系統采用分層架構設計,每一層都獨立負責特定的功能,確保系統的可維護性和擴展性。根據系統的功能需求,將不同的功能設計劃分為一個個的模塊,每個模塊負責實現一個或多個相關的功能。該系統分為三個主要模塊:用戶管理、考試管理、在線考試。該系統的功能模塊如圖1所示。

2.用戶管理
學生可以進行登錄、在線考試、試卷分式和錯題訓練等操作,教師可以對題庫和試卷進行增刪改查操作,教師也可查看自己班級學生的考試成績,管理員具有最高權限,可以管理學生和教師信息。
1.學生端功能模塊
(1)用戶認證:學生可以通過用戶名和密碼登錄系統,也可以進行新用戶的注冊和注銷。
(2)個人信息:學生可以查看自己的基本信息,包括姓名、聯系方式等。學生也可以更新個人信息。
(3)考試信息:學生可以查看考試的詳細信息,學生可以在線考試,可以查看考試成績和分析報告。
2.教師功能模塊
(1)用戶認證:教師可以通過用戶名和密碼登錄系統。
(2)學生管理:宿管人員可以查看學生的基本信息和考試信息,可以對學生的信息進行增刪改查操作。
(3)考試管理:教師可以進行題庫管理、試題管理和考試管理。
3.管理員功能模塊
(1)用戶認證:管理員可以通過用戶名和密碼登錄系統。
(2)用戶管理:管理員可以添加、刪除和修改所有用戶的賬戶信息,包括學生和教師。也可以為用戶分配角色,如學生、教師和管理員。
(3)考試管理:管理員可以進行題庫管理、試題管理和考試管理。
(三)系統開發技術選型
1.后端技術:SpringBoot框架
本系統采用 Spring Boot框架作為后端框架,SpringBoot是基于Spring框架的一個開源項目,其提供了強大的自動配置功能,能夠自動配置Spring應用程序所需的各種組件,SpringBoot通過簡化配置、提供開箱即用的功能和內置服務器(例如Tomcat),使得開發和部署Spring應用程序變得更加容易和高效[3,4]。它廣泛應用于各種類型的應用開發,包括Web應用、微服務和企業級應用。
2.前端技術:Vue
Vue.js(簡稱Vue)是一個用于構建用戶界面的漸進式JavaScript框架。與其他大型框架不同的是,Vue被設計為可以逐步采用。它的核心庫只關注視圖層,并且非常容易上手。Vue是一個功能強大且易于使用的框架,適用于從小型項目到大型項目應用的各種場景。通過其漸進式的設計理念和豐富的生態系統,Vue是前端開發者非常歡迎的工具之一。
本系統使用Vue.js結合HTML5和CSS3來進行網頁的結構化和美化工作。Vue.js不僅用于創建用戶界面和管理應用狀態,還用于實現動態交互,如表單驗證、異步數據加載和動畫效果[4。通過Vue的組件化開發方式,可以更好地組織和維護代碼,提升開發效率和應用性能。此外,系統使用Shiro和JWT結合的方式進行權限認證和控制,確保不同角色(學生、教師、管理員)的用戶擁有適當的訪問權限和操作能力,從而保障系統的安全性和可靠性。
3.數據庫:MySQL
MySQL是一個功能強大、性能優越的關系型數據庫管理系統,適用于各種規模的應用開發。作為一個開源的數據庫管理系統,它不僅降低了開發和運維成本,還提供了強大的社區支持和豐富的生態系統。其通過靈活的存儲引擎、高可用性和豐富的功能,為開發者提供了一個可靠、高效的數據存儲解決方案[5]。該系統使用Navicat進行數據庫管理操作。Navicat是一個功能強大且易于使用的數據庫管理工具,支持多種數據庫系統,提供豐富的功能。
(四)數據庫表設計
為了實現自開課網上考試管理系統的各項功能,本系統設計了多個數據庫表來存儲和管理不同類型的數據。這些表包括 sys_user、el_qu、el_qu_answer、el_repo等十二張。以用戶表和試題表為例,表1、表2分別是這兩個表的表結構。



(五)系統詳細設計與實現
基于SpringBoot的自開課網上考試管理系統設計采用B/S架構,其登錄界面如圖2所示。

通過將Shiro和JWT結合,可以實現更加靈活和高效的權限控制。根據用戶的角色(學生、教師、管理員),授予相應的權限并對請求進行處理。以管理員為例,管理員權限的主界面如圖3所示。
不同權限的角色可以實現各自的特定功能。學生可以在線答題和查看成績分析;輔導教師可以上傳和管理考試題庫,創建和發布考試,并查看和分析學生成績;
管理員可以管理系統用戶,維護系統配置和日志,確保系統的正常運行和安全性。通過Vue.js和權限認證機制的結合,每個角色都能根據自身權限訪問和操作系統中的特定功能。這有助于提升系統的安全性和用戶體驗。
三、結束語
本文介紹了一種基于SpringBoot的自開課網上考試管理系統,本系統通過采用先進的技術棧,包括SpringBoot、Vue.js、Shiro和JWT,構建了一個高效、靈活、安全的自開課網上考試管理系統。系統利用HTML5和CSS3進行網頁的結構化和美化,Vue.js則用于實現動態交互、組件化開發和狀態管理,從而提升了開發效率和用戶體驗。Shiro和JWT的結合為系統提供了強大的權限認證和控制,確保不同角色的用戶可以安全地實現各自的功能。學生能夠在線答題和查看成績,輔導教師可以上傳和管理題庫、創建考試、分析成績,而管理員則負責進行用戶管理和系統維護。基于信息化手段的自開課網上考試管理系統顯著提高了考試管理的效率和準確性,簡化了考試流程,提升了服務質量,為學校自開課的順利開展提供了有力支持。
作者單位:陳麗穎烏蘭察布開放大學
參考文獻
[1]吳敏.基于JavaWeb的班級信息管理系統的設計與實現[J].中國新通信,2024,26(07):74-76.
[2]馬惠強,曾宋賢,陳云生.基于Java 的在線考試系統設計與開發[J].現代信息科技,2024,8(12):56-60+65.
[3]陳偉,張奧然,許信宇,等.一個基于SpringBoot 和AngularJS 的家庭理財系統設計與實現[J].電腦知識與技術,2024,20(12):46-49.
[4]李偉,金梁.基于WAMP架構的Web在線考試系統設計[J].自動化技術與應用,2023,42(05):162-165.
[5]曹燦,李磊.基于JavaWeb 的考勤系統的設計與實現[J].黑龍江科學,2023,14(02):41-43.