• (免费分享)基于springboot,vue在线考试系统


    该项目是一个前后端分离,后端使用 SpringBoot,前端使用 VUE 和 Element-UI 组件库配合完成开发。

    开发工具:IDEA,数据库:mysql5.7

    源码获取:下方gongzhonghao,输入007

    1. package com.exam.controller;
    2. import com.exam.entity.Admin;
    3. import com.exam.entity.ApiResult;
    4. import com.exam.serviceimpl.AdminServiceImpl;
    5. import com.exam.util.ApiResultHandler;
    6. import org.springframework.beans.factory.annotation.Autowired;
    7. import org.springframework.web.bind.annotation.*;
    8. @RestController
    9. public class AdminController {
    10. private AdminServiceImpl adminService;
    11. @Autowired
    12. public AdminController(AdminServiceImpl adminService){
    13. this.adminService = adminService;
    14. }
    15. @GetMapping("/admins")
    16. public ApiResult findAll(){
    17. System.out.println("查询全部");
    18. return ApiResultHandler.success(adminService.findAll());
    19. }
    20. @GetMapping("/admin/{adminId}")
    21. public ApiResult findById(@PathVariable("adminId") Integer adminId){
    22. System.out.println("根据ID查找");
    23. return ApiResultHandler.success(adminService.findById(adminId));
    24. }
    25. @DeleteMapping("/admin/{adminId}")
    26. public ApiResult deleteById(@PathVariable("adminId") Integer adminId){
    27. adminService.deleteById(adminId);
    28. return ApiResultHandler.success();
    29. }
    30. @PutMapping("/admin/{adminId}")
    31. public ApiResult update(@PathVariable("adminId") Integer adminId, Admin admin){
    32. return ApiResultHandler.success(adminService.update(admin));
    33. }
    34. @PostMapping("/admin")
    35. public ApiResult add(Admin admin){
    36. return ApiResultHandler.success(adminService.add(admin));
    37. }
    38. }

    package com.exam.controller;

    import com.exam.entity.ApiResult;
    import com.exam.entity.PaperManage;
    import com.exam.service.PaperService;
    import com.exam.serviceimpl.FillQuestionServiceImpl;
    import com.exam.serviceimpl.JudgeQuestionServiceImpl;
    import com.exam.serviceimpl.MultiQuestionServiceImpl;
    import com.exam.util.ApiResultHandler;
    import com.exam.vo.Item;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.PostMapping;
    import org.springframework.web.bind.annotation.RequestBody;
    import org.springframework.web.bind.annotation.RestController;

    import java.util.List;

    @RestController
    public class ItemController {

        @Autowired
        MultiQuestionServiceImpl multiQuestionService;

        @Autowired
        FillQuestionServiceImpl fillQuestionService;

        @Autowired
        JudgeQuestionServiceImpl judgeQuestionService;

        @Autowired
        PaperService paperService;

        @PostMapping("/item")
        public ApiResult ItemController(@RequestBody Item item) {
            // 选择题
            Integer changeNumber = item.getChangeNumber();
            // 填空题
            Integer fillNumber = item.getFillNumber();
            // 判断题
            Integer judgeNumber = item.getJudgeNumber();
            //出卷id
            Integer paperId = item.getPaperId();

            // 选择题数据库获取
            List  changeNumbers = multiQuestionService.findBySubject(item.getSubject(), changeNumber);
            if(changeNumbers==null){
                return ApiResultHandler.buildApiResult(400,"选择题数据库获取失败",null);
            }
            for (Integer number : changeNumbers) {
                PaperManage paperManage = new PaperManage(paperId,1,number);
                int index = paperService.add(paperManage);
                if(index==0)
                    return ApiResultHandler.buildApiResult(400,"选择题组卷保存失败",null);
            }

            // 填空题
            List fills = fillQuestionService.findBySubject(item.getSubject(), fillNumber);
            if(fills==null)
                return ApiResultHandler.buildApiResult(400,"填空题数据库获取失败",null);
            for (Integer fillNum : fills) {
                PaperManage paperManage = new PaperManage(paperId,2,fillNum);
                int index = paperService.add(paperManage);
                if(index==0)
                    return ApiResultHandler.buildApiResult(400,"填空题题组卷保存失败",null);
            }
            // 判断题
            List judges = judgeQuestionService.findBySubject(item.getSubject(), judgeNumber);
            if(fills==null)
                return ApiResultHandler.buildApiResult(400,"判断题数据库获取失败",null);
            for (Integer judge : judges) {
                PaperManage paperManage = new PaperManage(paperId,3,judge);
                int index = paperService.add(paperManage);
                if(index==0)
                    return ApiResultHandler.buildApiResult(400,"判断题题组卷保存失败",null);
            }


              return ApiResultHandler.buildApiResult(200,"试卷组卷成功",null);
        }
    }
     

  • 相关阅读:
    SwiftUI 4.0:两种方式实现子视图导航功能
    【华为OD机试真题 python】最长连续子序列 【2022 Q4 | 100分】
    乐观型人格分析,性格乐观的优缺点和职业发展分析
    SQL binary 轉float 絕對好用
    linux中怎么用shell逐行读取文件
    线下门店如何根据员工排班情况给客户预约
    计算机英文论文写作需要注意哪些细节? - 易智编译EaseEditing
    【Java八股40天-Day5】 IO 和 NIO
    SQLite表添加主键
    JavaScript之运算符、表达式、流程控制语句、if、for循环、Switch、continue和break
  • 原文地址:https://blog.csdn.net/weixin_42899150/article/details/127834139