源码 10r
源码+运行部署 30r
源码+运行部署+使用答疑 60r
功能描述
项目是一个前后端分离的考试系统,后端使用 SpringBoot,前端使用 VUE 和 Element-UI 组件库配合完成开发
考试系统具备以下功能:
用户管理:包括学生、教师、管理员等不同角色的账户管理功能,可以进登录、编辑个人信息等操作。
考试管理:教师可以创建考试并设定考试时间、考试科目、考试类型(选择题、填空题、解答题等)、考试范围等内容。
试题管理:教师可以上传试题题库,包括选择题、填空题、解答题等不同类型的题目。系统应支持试题的分类、难度设置。
考生考试:学生可以根据考试安排参加在线考试,系统应支持考生在线答题、计时、自动评分等功能。
成绩管理:考试结束后,系统应自动对考生答题情况进行评分并生成成绩单,同时支持教师对学生成绩进行查询、统计和分析。
运行截图
关键代码
package com.exam.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.exam.entity.ApiResult;
import com.exam.entity.ExamManage;
import com.exam.serviceimpl.ExamManageServiceImpl;
import com.exam.util.ApiResultHandler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@RestController
public class ExamManageController {
@Autowired
private ExamManageServiceImpl examManageService;
@GetMapping("/exams")
public ApiResult findAll(){
System.out.println("不分页查询所有试卷");
ApiResult apiResult;
apiResult = ApiResultHandler.buildApiResult(200, "请求成功!", examManageService.findAll());
return apiResult;
}
@GetMapping("/exams/{page}/{size}")
public ApiResult findAll(@PathVariable("page") Integer page, @PathVariable("size") Integer size){
System.out.println("分页查询所有试卷");
ApiResult apiResult;
Page<ExamManage> examManage = new Page<>(page,size);
IPage<ExamManage> all = examManageService.findAll(examManage);
apiResult = ApiResultHandler.buildApiResult(200, "请求成功!", all);
return apiResult;
}
@GetMapping("/exam/{examCode}")
public ApiResult findById(@PathVariable("examCode") Integer examCode){
System.out.println("根据ID查找");
ExamManage res = examManageService.findById(examCode);
if(res == null) {
return ApiResultHandler.buildApiResult(10000,"考试编号不存在",null);
}
return ApiResultHandler.buildApiResult(200,"请求成功!",res);
}
@DeleteMapping("/exam/{examCode}")
public ApiResult deleteById(@PathVariable("examCode") Integer examCode){
int res = examManageService.delete(examCode);
return ApiResultHandler.buildApiResult(200,"删除成功",res);
}
@PutMapping("/exam")
public ApiResult update(@RequestBody ExamManage exammanage){
int res = examManageService.update(exammanage);
// if (res == 0) {
// return ApiResultHandler.buildApiResult(20000,"请求参数错误");
// }
System.out.print("更新操作执行---");
return ApiResultHandler.buildApiResult(200,"更新成功",res);
}
@PostMapping("/exam")
public ApiResult add(@RequestBody ExamManage exammanage){
int res = examManageService.add(exammanage);
if (res ==1) {
return ApiResultHandler.buildApiResult(200, "添加成功", res);
} else {
return ApiResultHandler.buildApiResult(400,"添加失败",res);
}
}
@GetMapping("/examManagePaperId")
public ApiResult findOnlyPaperId() {
ExamManage res = examManageService.findOnlyPaperId();
if (res != null) {
return ApiResultHandler.buildApiResult(200,"请求成功",res);
}
return ApiResultHandler.buildApiResult(400,"请求失败",res);
}
}