Java毕设课设-在线考试管理系统
计算机课程设计|毕业设计之在线考试管理系统代码-基于SSM的在线考试管理系统
> > 所有工具下载链接:
JDK版本下载
Eclipse下载链接
Mysql下载链接
tomcat下载链接
向日葵远程工具
1.开发环境
- 开发语言:Java
- 技术:SSM、BootStrap
- 数据库:MySQL
- 架构:B/S
- 源码类型: Web
- 编译工具:Idea、Eclipse、MyEclipse (选其一)
- 其他:jdk1.8、Tomcat8.5 、Navicat
2.系统的设计与实现
2.1 用户类型
用户角色分为 管理员、教师、学生 这两类用户。
2.2 各角色功能模块
2.2.1 管理员
- 登录
- 基本信息管理
- 班级管理
- 教师管理
- 学生管理
- 试卷管理
- 试题管理
- 考试安排管理
- 以往考试信息
- 作业管理
2.2.2 教师【教师跟管理员功能一样,有些功能没有修改删除权限】
- 登录
- 基本信息管理
- 班级管理
- 教师管理
- 学生管理
- 试卷管理
- 试题管理
- 考试安排管理
- 以往考试信息
- 作业管理
2.2.3 学生
- 登录注册
- 考试中心【需要教师安排考试才能参加】
- 考试历史
- 作业下载【需要管理员布置作业后,学生才有作业】
2.3 部分功能模块展示
学生登录模态框
学生考试中心
学生考试历史
学生作业
管理员之试卷管理
管理员之试题管理
管理员之考试安排
管理员之作业管理
2.4部分代码
/*** 提交作业** @param request* @param homeWork* @param file* @return* @author 疯狂行者* */@RequestMapping(value = "/publishwork")public ModelAndView publishwork(HttpServletRequest request, HomeWork homeWork, @RequestParam("inputfile") MultipartFile file) {String f = UUID.randomUUID().toString();String filePath = "D:/ityueqiangu/ssmfile";String extension = FilenameUtils.getExtension(file.getOriginalFilename());String fileName = f + "." + extension;logger.info("保存上传文件 " + fileName + " 到 " + filePath);/** 保存上传 文件 */this.saveUploadFile(file, filePath + File.separator + fileName);StringBuffer url = request.getRequestURL();//获取 头部文件String headerUrl = url.delete(url.length() - request.getRequestURI().length(), url.length()).toString();TeacherInfo loginTeacher = (TeacherInfo) request.getSession().getAttribute("loginTeacher");//保存到 作业表中homeWork.setFileId(f);homeWork.setPublishPath(headerUrl + "/file/" + fileName);homeWork.setPublishTime(new Date());homeWork.setCreatTime(new Date());homeWork.setCreatBy(loginTeacher.getTeacherId());ModelAndView modelAndView = new ModelAndView();Integer result = homeWorkService.insert(homeWork);if (result < 0) {modelAndView.addObject("error", "布置作业失败");modelAndView.setViewName("error");} else {modelAndView.setViewName("redirect:homework");modelAndView.addObject("success", "布置作业成功");}return modelAndView;}
/*** 获取学生端列表* @author FlowerStone* @date 2021年11月21日 0021 19:10:53* @param studentId* @return*/@RequestMapping(value = "/finishhomeworklist/{studentId}")public ModelAndView finishhomeworklist(@PathVariable("studentId") Integer studentId){ModelAndView modelAndView = new ModelAndView();if (studentId == null) {logger.error("学生编号 为空");modelAndView.setViewName("error");return modelAndView;}//根据 学生id 查询学生的信息StudentInfo studentInfo = studentInfoService.getStudentById(studentId);//查询批阅信息Homeworkcommit hc = new Homeworkcommit();hc.setCreatBy(studentId);List<Homeworkcommit> homeworkcommits = homeworkcommitService.list(hc);Map<Integer,List<Homeworkcommit>> homeworkcommitMap = homeworkcommits.stream().collect(Collectors.toMap(Homeworkcommit::getHomeworkId, homeworkcommit -> homeworkcommits));//根据班级查询作业情况HomeWork homeWork = new HomeWork();homeWork.setClassId(studentInfo.getClassInfo().getClassId());Homeworkcommit homeworkcommit = new Homeworkcommit();homeworkcommit.setCreatBy(studentId);homeWork.setHomeworkcommit(homeworkcommit);//所有的作业List<HomeWork> homeWorkList = homeWorkService.list(homeWork);//设置老师建议homeWorkList.stream().forEach(element->{if (homeworkcommitMap.get(element.getId())!=null) {//个人的HomeWork paramHomework = new HomeWork();paramHomework.setId(element.getId());Homeworkcommit paramHomeworkcommit = new Homeworkcommit();paramHomeworkcommit.setCreatBy(studentId);paramHomework.setHomeworkcommit(paramHomeworkcommit);List<HomeWork> personHomeWorks = homeWorkService.listHomeworkcommit(paramHomework);
// List<Homeworkcommit> homeworkcommitList = homeworkcommitMap.get(element.getId());
// homeworkcommitList.forEach(item->{// element.setTeacherSuggest(personHomeWorks.get(0).getTeacherSuggest());
// });if (!CollectionUtils.isEmpty(personHomeWorks)) {element.setTeacherSuggest(personHomeWorks.get(0).getTeacherSuggest());}}});modelAndView.setViewName("/reception/finishhomeworklist");modelAndView.addObject("homeWorks",homeWorkList);return modelAndView;}
2.5作业上传注意
注意:作业默认提交到D:/ityueqiangu/ssmfile下,本人是使用IDEA运行项目,所以需要配置路径映射,如下:
大家点赞、收藏、关注、评论啦 、需要源码可以评论区咨询
Java毕设课设-在线考试管理系统相关推荐
- Java毕设课设-高校用电管理系统
计算机课程设计|毕业设计之高校用电管理系统代码-基于JavaWeb的高校用电管理系统 1.开发环境 开发语言:Java 技术:JavaWeb[Servlet] 数据库:MySQL 架构:B/S 源码类 ...
- Java毕设课设-学生心理测试管理系统
计算机课程设计|毕业设计之学生心理测试管理系统代码-基于JavaWeb的学生心理测试管理系统 1.开发环境 开发语言:Java 技术:JavaWeb[Servlet] 数据库:MySQL 架构:B/S ...
- Java毕设项目自行车在线租赁管理系统2021(java+VUE+Mybatis+Maven+Mysql)
Java毕设项目自行车在线租赁管理系统2021(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuild ...
- Java毕设|课设项目-蛋糕店商城管理系统
> 注意:这里不是全部功能,需要全部功能的可以看评论联系我 1.系统总体设计 1.1开发环境 操作系统:Windows10: 编程语言:Java: 运行环境:jdk1.8 开发工具:Eclips ...
- Python Web在线考试管理系统【源码+毕设论文】
本文参考之前Python+Django Web在线考试管理系统的博文,协助某同学完成的毕业设计论文. 有需要的同学请也可以自行参考以下系列文章: Python+Django Web在线考试管理系统设计 ...
- 2021山东大学软件学院JAVA高程课设-考试平台的设计与开发(一)
系列目录 2021山东大学软件学院JAVA高程课设-考试平台的设计与开发(一) 2021山东大学软件学院JAVA高程课设-考试平台的设计与开发(二) 2021山东大学软件学院JAVA高程课设-考试平台 ...
- Springboot在线考试管理系统 计算机毕设源码62754
摘 要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题.针对在线考试管理等问题,对 ...
- 基于java的网络在线考试管理系统的设计与实现--毕业开题报告
基于java的网络在线考试管理系 统的设计与实现开题报告–毕业设计 最近grace刚完成毕业设计 通过了赶紧来给宝贝们分享我的成果哈哈 设计题目:基于java的网络在线考试管理系统的设计与实现 一.选 ...
- jsp+servlet+bootstrap开发java web在线考试管理系统
jsp+servlet+bootstrap开发java web在线考试管理系统 项目描述 考试对于考试管理者来说无疑是一件非常繁重的工作,在线考试管理系统的出现,使考试变成一件简单易行的事情. 本系统 ...
最新文章
- 面对新型肺炎疫情,AI能做什么?
- [小技巧]移除C/C++源码中无关的#ifdef
- golang键盘输入:从控制台获取信息
- 中国海洋大学计算机学院研究生导师,中国海洋大学硕士研究生导师介绍:唐瑞春...
- Linux系统编程9:进程入门之操作系统为什么这么重要以及它是如何实现管理的
- 【玩转数据系列三】利用图算法实现金融行业风控
- .htaccess跳转https
- 数据库设计三大范式详解
- Linux怎么删除tomcat日志,Linux下定时切割Tomcat日志并删除指定天数前的日志记录...
- MATLAB下载+安装教程
- python超市管理系统实训报告_超市管理系统总结报告
- Java多线程 - 线程状态
- 如何用Docker搭建自己的LANP|LNMP环境?
- xp系统关于无线网络连接服务器,八步骤搞定XP系统无线网络设置问题
- 计算机桌面文件删除不掉是怎么了,桌面上文件删不掉_桌面上的压缩文件为什么删除不了?...
- 无人出租车江湖:百度出击,安途并进
- Titanic练习 特征分析与选择
- 模仿6ecc 主页 主体部分(查看附件点击6eccHTML 就会看到如下页面效果)
- python新手入门程序——实验5
- C#中在鼠标经过Button控件时显示提示信息(弹出气泡提示框)
热门文章
- 关于安装oracle[INS-30131]错误解决方法
- 求解相邻比特数问题(DP)
- 怎样格式化xml文件?
- Word文件乱码XML
- DNS服务器未响应或防火墙阻止了,也可能是因为DNS服务器未响应或防火墙阻止了...
- 发展网络安全产业筑牢网络强国基石
- 哈工大数据结构期末_21哈工大计算机考研 | 备考重点与参考书目推荐!
- 论文笔记《Learning Deep Correspondence through Prior and Posterior Feature Constancy》
- 机器学习算法——详细介绍 集成学习,以及什么是Bagging、随机森林、Boosting、XGBoost
- NAS 详细搭建方案 - 安装Aria2