当前位置: 首页 > news >正文

基于java+springmvc+mybatis+vue+mysql的四六级在线考试系统

项目介绍

基本每个大学生在校期间都要经历英语四六级考试的过程,只有通过了四六级的考试才能够顺利的领取到毕业证书,但是传统的四六级考试比较落后,都是人工的方式在进行各种工作,这不仅浪费人力物力,而且在时效上也有很大的弊端,为此我们开了本基于网络的四六级在线考试系统。

对于本四六级在线考试系统的设计来说,系统开发主要是采用java语言技术,后端采用ssm框架,前端采用vue技术,在整个系统的设计中应用MySQL数据库来完成数据存储,具体根据四六级在线考试系统的现状来进行开发的,具体根据现实的需求来实现四六级在线考试系统网络化的管理,各类信息有序地进行存储,进入四六级在线考试系统页面之后,方可开始操作主控界面,主要功能包括管理员:首页、个人中心、用户管理、考试成绩管理、公告通知管理、考生通知管理、试题管理、试卷管理、考试管理,用户:首页、个人中心、考试成绩管理、公告通知管理、考生通知管理、考试管理等功能。

本论文主要讲述了四六级在线考试系统开发背景,该系统它主要是对需求分析和功能需求做了介绍,并且对系统做了详细的测试和总结。具体从业务流程、数据库设计和系统结构等多方面的问题。望能利用先进的计算机技术和网络技术来改变目前的四六级在线考试系统状况,提高管理效率。

开发环境

开发语言:Java
数据库 :MySQL
系统架构:B/S
后端框架:SSM
前端框架:Vue
开发工具:IDEA或者Eclipse,JDK1.8,Maven

系统截图

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

部分代码

package com.controller;import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.entity.HistorysEntity;
import com.entity.ShangpinfenleiEntity;
import com.service.HistorysService;
import com.service.ShangpinfenleiService;
import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.YonghuEntity;
import com.entity.view.YonghuView;import com.service.YonghuService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;/*** 用户* 后端接口*/
@RestController
@RequestMapping("/yonghu")
public class YonghuController {@Autowiredprivate YonghuService yonghuService;@Autowiredprivate TokenService tokenService;@Autowiredprivate ShangpinfenleiService shangpinfenleiService;@Autowiredprivate HistorysService historysService;/*** 登录*/@IgnoreAuth@RequestMapping(value = "/login")public R login(String username, String password, String captcha, HttpServletRequest request) {YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", username));if(user==null || !user.getMima().equals(password)) {return R.error("账号或密码不正确");}String token = tokenService.generateToken(user.getId(), username,"yonghu",  "考生" );HistorysEntity historysEntity=new HistorysEntity();historysEntity.setAddtime(new Date());historysEntity.setYonghuid(user.getId());historysService.insert(historysEntity);return R.ok().put("token", token);}/*** 注册*/@IgnoreAuth@RequestMapping("/register")public R register(@RequestBody YonghuEntity yonghu){//ValidatorUtils.validateEntity(yonghu);YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", yonghu.getYonghuming()));if(user!=null) {return R.error("注册考生已存在");}Long uId = new Date().getTime();yonghu.setId(uId);yonghuService.insert(yonghu);return R.ok();}/*** 退出*/@RequestMapping("/logout")public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok("退出成功");}/*** 获取考生的session考生信息*/@RequestMapping("/session")public R getCurrUser(HttpServletRequest request){Long id = (Long)request.getSession().getAttribute("userId");YonghuEntity user = yonghuService.selectById(id);ShangpinfenleiEntity shangpinfenleiEntity=shangpinfenleiService.selectById(user.getClassid());user.setShangpinfenleiEntity(shangpinfenleiEntity);return R.ok().put("data", user);}/*** 密码重置*/@IgnoreAuth@RequestMapping(value = "/resetPass")public R resetPass(String username, HttpServletRequest request){YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", username));if(user==null) {return R.error("账号不存在");}user.setMima("123456");yonghuService.updateById(user);return R.ok("密码已重置为:123456");}/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,YonghuEntity yonghu,HttpServletRequest request){EntityWrapper<YonghuEntity> ew = new EntityWrapper<YonghuEntity>();PageUtils page = yonghuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yonghu), params), params));for(int i=0;i<page.getList().size();i++){YonghuEntity yonghuEntity= (YonghuEntity) page.getList().get(i);ShangpinfenleiEntity shangpinfenleiEntity=shangpinfenleiService.selectById(yonghuEntity.getClassid());yonghuEntity.setShangpinfenleiEntity(shangpinfenleiEntity);}return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,YonghuEntity yonghu, HttpServletRequest request){EntityWrapper<YonghuEntity> ew = new EntityWrapper<YonghuEntity>();PageUtils page = yonghuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yonghu), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( YonghuEntity yonghu){EntityWrapper<YonghuEntity> ew = new EntityWrapper<YonghuEntity>();ew.allEq(MPUtil.allEQMapPre( yonghu, "yonghu"));return R.ok().put("data", yonghuService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(YonghuEntity yonghu){EntityWrapper< YonghuEntity> ew = new EntityWrapper< YonghuEntity>();ew.allEq(MPUtil.allEQMapPre( yonghu, "yonghu"));YonghuView yonghuView =  yonghuService.selectView(ew);return R.ok("查询考生成功").put("data", yonghuView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){YonghuEntity yonghu = yonghuService.selectById(id);ShangpinfenleiEntity shangpinfenleiEntity=shangpinfenleiService.selectById(yonghu.getClassid());yonghu.setShangpinfenleiEntity(shangpinfenleiEntity);return R.ok().put("data", yonghu);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){YonghuEntity yonghu = yonghuService.selectById(id);return R.ok().put("data", yonghu);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody YonghuEntity yonghu, HttpServletRequest request){yonghu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(yonghu);YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", yonghu.getYonghuming()));if(user!=null) {return R.error("考生已存在");}yonghu.setId(new Date().getTime());yonghuService.insert(yonghu);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody YonghuEntity yonghu, HttpServletRequest request){yonghu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(yonghu);YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", yonghu.getYonghuming()));if(user!=null) {return R.error("考生已存在");}yonghu.setId(new Date().getTime());yonghuService.insert(yonghu);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody YonghuEntity yonghu, HttpServletRequest request){//ValidatorUtils.validateEntity(yonghu);yonghuService.updateById(yonghu);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){yonghuService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,@PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<YonghuEntity> wrapper = new EntityWrapper<YonghuEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}int count = yonghuService.selectCount(wrapper);return R.ok().put("count", count);}}

http://www.taodudu.cc/news/show-8328431.html

相关文章:

  • 基于jsp和ssm架构实现四六级英语报名系统演示【附项目源码+论文说明】分享
  • java项目之高校四六级报名管理系统(ssm+jsp+mysql)
  • 毕业设计基于jspm的高校四六级报名管理系统 毕业设计论文+源码
  • springboot+java四六级英语考试报名系统
  • 计算机考试报名系统php,php英语四六级在线报名平台
  • 基于SSM的四六级报名与成绩查询系统的设计与实现
  • 基于ssm的高校四六级报名管理系统
  • 基于Java四六级报名与成绩查询系统设计实现(源码+lw+部署文档+讲解等)
  • RPC理论原理
  • 皮亚杰将儿童的道德发展分为四个阶段
  • 皮亚杰认知发展理论
  • 皮亚杰运演作为儿童思惟发展的四个阶段
  • 皮亚杰 mitch_充分利用自己的影响力–与Mitch Joel进行主题演讲
  • 学前教育怎么利用计算机思维,皮亚杰的思维发展理论对学前教育有什么启示
  • 皮亚杰:数学结构和逻辑结构
  • 小学计算机课在玩中学,皮亚杰:游戏理论——让孩子在玩中学
  • 半夜失眠,码点关于技术美术的字
  • UE4美术笔记
  • 美术资源标准(文件夹篇)
  • csdn 写文章时 文字部分 常用颜色
  • 所谓时间的朋友,是不耍滑头、不抖机灵
  • 和刘备相关的人(十 )
  • 项目经理修炼之道(2) -- 必须读的书 .
  • 四川师范大学人文地理(1-6章)95分版本提纲
  • 星级数字几亮几颗星
  • Gridview列根据取值给前台付其他的值及数据规范
  • ajax实验,jQuery ajax 我弄了个小实验
  • Coding 及 git 的工程使用方法
  • ibatis 调用存储过程
  • Android的简单介绍以及搭建运行环境