[SpringBoot] Design and implementation of question bank system based on SSM framework

Topic:

题库系统的设计与实现

1. Project Introduction

Introduction: It is mainly divided into three terminals, student terminal, teacher terminal and administrator terminal. The student terminal can view exams and practice questions, and the teacher terminal is responsible for importing question bank data, changing test questions, etc.; the administrator is responsible for log maintenance, personnel management, question bank maintenance, etc.
The system integrates the functions of student examination and question bank system maintenance; the question bank is divided according to college-major-course, supports batch addition of test questions, and CRUD of test questions. It has manual composition and examination of test papers. There are two ways to automatically organize the test paper. At the same time, the system will automatically calculate the total score of the test paper in the background.

The main function

(1)System management Mainly manages users and login permissions. Teacher permissions include adding, deleting, modifying, querying test questions and test paper. Student permissions are to log in to the exam and its answers; use system logs to record sensitive user operations, such as deleting test papers, deleting test questions, deleting test papers, etc. Spring-based AOP log maintenance log, deletion of test questions for repeated verification (use email to send verification code form) .

(2)User management: The administrator should create accounts for each teacher and student, and perform CRUD on these users.Exam paper management mainly includes:Exam paper management: (4)Supports batch import of test questions from Excel filesTest question entry: Supports batch import of test questions from Excel files. The front-end directly parses locally uploaded Excel files, displays them in table form, and uses Mybatis-plus to batch insert into the database.: Teachers can maintain the question bank according to the courses of the university major, including inputting and Maintenance (including adding test questions, deleting test questions, modifying test questions, and querying test questions). Test question bank management
(3)< a i=12> (5) Intelligent volume management realizes automatic volume formation and manual volume formation according to requirements (difficulty, etc.).

Technology selection

Framework: SSM (Spring, SpringBoot, Mybatis-plus)
Technology stack: Springboot, Mybatis-plus
Front-end: Vue.js, Vuex , Echarts, axios, ElementUI
Database: MySQL 8.0
Development tools: IDEA 2023.1
User data storage: Cookies

2. Module introduction

Insert image description here
As shown in the figure, the user enters the system after entering their account number and password. The system will identify its permissions based on the account password and enter different interfaces.

student side

The main functions of the student terminal include: examination paper viewing, online examination, examination question practice, score statistics and other functions. As shown in the figure below, users can see the test papers and related test information for each subject under the "My Test Papers" column. You can also search for the corresponding test paper in the input box on the upper right.
Insert image description here
Once the user clicks on the test paper, the exam will begin. During the exam, the remaining time is displayed on the upper right side, the question number can be switched on the left side, and the completion status of the question can be displayed at the same time. After answering the questions, the user can click "End Exam" to hand in the paper, and the system will automatically correct it.
Insert image description here
After handing in the paper, the system will automatically mark it and students can check their scores. Other information about this exam will also be recorded in the system.
Insert image description here
In the "My Scores" module on the home page, users can see all test score records. At the same time, a concise prompt is used to indicate whether the subject has been passed.
Insert image description here

Teacher's side

The teacher's end mainly has functions such as examination management, question bank management, student management, and score query.

(1) Examination management

In the test management module, teachers can see relevant test paper information. The main displayed test paper information includes: test paper name, test paper number, college to which it belongs, major to which it belongs, course to which it belongs, grade, test date, duration, total score, test paper type, paper composition status, total number of test questions and related operations. Teachers can click "Test Paper Question Information Update" in the upper left corner of the form to update the information content of the test paper. At the same time, the test paper information supports sorting according to grade and paper composition status. Convenient for teachers to quickly check.
Insert image description here
In the operation bar, teachers can edit the test paper information, such as modifying the test time and duration. After the teacher clicks the "Edit" button, he can update the exam schedule information
Insert image description hereOnline test writing function: Teachers have two ways to generate test questions: manual test writing and automatic test writing. In manual examination preparation, the teacher selects the test question type, score, subject and other information, and the system will update the examination paper after submission; in automatic examination preparation, the teacher can select the difficulty of the examination question and set multiple choice, true or false or fill-in-the-blank questions as needed. quantity.

Test paper deletion function, this function will perform security verification before deletion. The system will send an email to the teacher, and the teacher can enter the verification code in the email before deleting. Improve system data security.
Insert image description here
Insert image description here

Insert image description here

Preview test paper function: After the teacher clicks the "Preview" button, the questions, analysis, options, answers and other information of the modified test paper will be displayed.
Insert image description hereTest paper reset function: Teachers can reset the question content of the test paper as needed. At the same time, after the test paper is reset, all test questions will be cleared, the total number of test questions will become 0, and the paper composition status will be changed to "Uncomposed".
Insert image description hereTeachers can publish new exams and fill in the exam schedule information. Click "Create Now" to publish the exam content, and students can view the exam information.
Insert image description here

(2) Exam question management

Test question import function: Teachers can import local test question files in Excel format. The entity import function supports three question types: multiple-choice questions, true-false questions, and fill-in-the-blank questions. After the teacher clicks "Import Data" and chooses to upload a local Excel file, the local Excel file uploaded by the teacher will be automatically parsed into tabular data and displayed in pages. After clicking the "Add All" button, the system will batch upload the uploaded test questions into the database; the teacher can also export the test questions on the page into Excel file format by clicking "Export Test Questions".
Insert image description here
As shown in the figure, this module is used to manage professional question bank information. At the top of the form, teachers can quickly find the corresponding professional question bank based on the three conditions of college, major, and course. The table information displays the question bank information of all majors, specifically showing the question bank number, name of the question bank, creation time, number of multiple-choice questions, number of true-false questions, number of fill-in-the-blank questions, total number of test questions, and related operations. At the same time, the table supports sorting question banks based on "question bank number" and "creation time". Improve query efficiency. For each question bank, teachers can view, delete, import, and manually enter functions.

Insert image description here

Teachers search the question bank based on colleges, majors, and courses, and the results are displayed in tables. (The drop-down list is obtained from the database)
Insert image description here
After the teacher clicks the "View" button on the right side of the corresponding question bank, the system will display all the test question information under the corresponding question bank.
Insert image description here
Teachers can enter the name of the test question in the corresponding test question bank to perform fuzzy query. Click "Query" to display the conditional search results.
Insert image description here
Question bank deletion function, this function will delete all test questions in the corresponding question bank. In order to ensure data security, this function will perform security verification before deletion, and the system will send an email to the teacher. The teacher must enter the verification code in the email to delete it. After the question bank is deleted, the system will automatically update the question bank data, and the selection, judgment, fill-in-the-blank questions, and total number of questions will be set to 0.
Insert image description here
Teachers can choose to import test questions and manually enter new test questions. The method of importing test questions is to select a local Excel file to upload the test questions.
Insert image description here

(3) Student performance management

Student score query: The teacher displays all student information and queries scores. Score results are displayed using Echarts visual charts. Clear and intuitive. Teachers can analyze student performance trends based on previous test scores.
Insert image description here
Score segment query: The teacher uses the test paper as a unit to query the student score segment for this exam. Grade bands are displayed as percentages. As shown below.
Insert image description here
Insert image description here

administrator

The administrator mainly performs CRUD for faculty and staff, and I will not go into details. The interface is as follows:
Insert image description here
Insert image description here
Insert image description here
Student information also supports Excel local parsing and import into the database.
Insert image description here

Here is the logging implemented based on the Spring AOP mechanism. The administrator is responsible for managing these user operation records.

Insert image description here

3. Station B project demonstration address

Station B project demonstration address

Partners in need are welcome to send private messages.

4. Other blogs related to this project

[SpringBoot practical function development] Send QQ email and email verification code dialog box

[SpringBoot] Pre-notification based on AOP mechanism and cookies to record user operation logs

Guess you like

Origin blog.csdn.net/SKMIT/article/details/131489312