源码获取:博客首页 "资源" 里下载!

一、项目简述

本系统功能包括:
排课管理,课程管理,讲师管理,班级管理,学生管理,教学资料,学习文档,在线测试,教材列表,教学设计,帮助中心等等功能。

二、项目运行

环境配置:

Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。

项目技术:

Springboot + Maven + mybatis+ Vue 等等组成,B/S模式 + Maven管理等等。

管理员控制器:

/*** 管理员控制器*/
@RestController
public class AdminController {@Resource(name = "adminService")private IAdminService adminService;/*** 管理员 查询管理员列表*/@RequestMapping(value = "/admin/qryPage", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public ListResult<Admin> qryPage(HttpRequest request) {Map<String, Object> param = new HashMap<>();int pageNo = request.containsKey("page_no") ? request.getInteger("page_no") : 1;int pageSize = request.containsKey("page_size") ? request.getInteger("page_size") : 20;if (request.containsKey("login_name")) {param.put("login_name", request.getString("login_name"));}if (request.containsKey("name")) {param.put("name", request.getString("name"));}return adminService.qryPage(param, pageNo, pageSize);}/*** 管理员 添加管理员*/@RequestMapping(value = "/admin/add", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public Result<Admin> insert(HttpRequest request) {Admin admin = new Admin();admin.setLoginName(request.getString("login_name"));admin.setName(request.getString("admin_name"));admin.setPwd(request.getString("login_name"));admin.setSex(request.getInteger("sex"));admin.setUpdateTime(new Date());return adminService.insert(admin, ImageUtil.stringToBytes(request.getString("admin_image")));}/*** 管理员 更新管理员*/@RequestMapping(value = "/admin/update", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public Result<Admin> update(HttpRequest request) {Admin admin = new Admin();admin.setLoginName(request.getString("login_name"));admin.setName(request.getString("admin_name"));admin.setPwd(request.getString("login_name"));admin.setSex(request.getInteger("sex"));admin.setUpdateTime(new Date());return adminService.update(admin, ImageUtil.stringToBytes(request.getString("admin_image")));}/*** 管理员 删除管理员*/@RequestMapping(value = "/admin/del", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public Result<Admin> del(HttpRequest request) {List<String> adminIdList = new ArrayList<>();JSONArray array = request.getJSONArray("admin_id_list");for (int i = 0; i < array.size(); i++) {adminIdList.add(array.getString(i));}return adminService.del(adminIdList);}
}

学生控制器:

/*** 学生控制器*/
@RestController
public class StudentController {@Resource(name = "studentService")private IStudentService studentService;/*** 管理员 查询学生列表*/@RequestMapping(value = "/student/qryPage", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public ListResult<Student> qryPage(HttpRequest request) {Map<String, Object> param = new HashMap<>();int pageNo = request.containsKey("page_no") ? request.getInteger("page_no") : 1;int pageSize = request.containsKey("page_size") ? request.getInteger("page_size") : 20;if (request.containsKey("student_id")) {param.put("student_id", request.getString("student_id"));}if (request.containsKey("name")) {param.put("name", request.getString("name"));}return studentService.qryPage(param, pageNo, pageSize);}@RequestMapping(value = "/student/add", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public Result<Student> insert(HttpRequest request) {Student student = new Student();student.setStudentId(request.getString("student_id"));student.setName(request.getString("student_name"));student.setPwd(request.getString("student_id"));student.setSex(request.getInteger("sex"));student.setClassId(request.getString("class_id"));student.setUpdateTime(new Date());return studentService.insert(student, ImageUtil.stringToBytes(request.getString("student_image")));}@RequestMapping(value = "/student/update", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public Result<Student> update(HttpRequest request) {Student student = new Student();student.setStudentId(request.getString("student_id"));student.setName(request.getString("student_name"));student.setPwd(request.getString("student_id"));student.setSex(request.getInteger("sex"));student.setClassId(request.getString("class_id"));student.setUpdateTime(new Date());return studentService.update(student, ImageUtil.stringToBytes(request.getString("student_image")));}@RequestMapping(value = "/student/del", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public Result<Student> del(HttpRequest request) {List<String> studentIdList = new ArrayList<>();JSONArray array = request.getJSONArray("student_id_list");for (int i = 0; i < array.size(); i++) {studentIdList.add(array.getString(i));}return studentService.del(studentIdList);}}

教师控制器:

/*** 教师控制器*/
@RestController
public class TeacherController {@Resource(name = "teacherService")private ITeacherService teacherService;/*** 管理员 查询教师列表*/@RequestMapping(value = "/teacher/qryPage", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public ListResult<Teacher> qryPage(HttpRequest request) {Map<String, Object> param = new HashMap<>();int pageNo = request.containsKey("page_no") ? request.getInteger("page_no") : 1;int pageSize = request.containsKey("page_size") ? request.getInteger("page_size") : 20;if (request.containsKey("teacher_id")) {param.put("teacher_id", request.getString("teacher_id"));}if (request.containsKey("name")) {param.put("name", request.getString("name"));}return teacherService.qryPage(param, pageNo, pageSize);}/*** 管理员 添加教师*/@RequestMapping(value = "/teacher/add", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public Result<Teacher> insert(HttpRequest request) {Teacher teacher = new Teacher();teacher.setTeacherId(request.getString("teacher_id"));teacher.setName(request.getString("teacher_name"));teacher.setPwd(request.getString("teacher_id"));teacher.setSex(request.getInteger("sex"));teacher.setUpdateTime(new Date());return teacherService.insert(teacher, ImageUtil.stringToBytes(request.getString("teacher_image")));}/*** 管理员 更新教师属性*/@RequestMapping(value = "/teacher/update", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public Result<Teacher> update(HttpRequest request) {Teacher teacher = new Teacher();teacher.setTeacherId(request.getString("teacher_id"));teacher.setName(request.getString("teacher_name"));teacher.setPwd(request.getString("teacher_id"));teacher.setSex(request.getInteger("sex"));teacher.setUpdateTime(new Date());return teacherService.update(teacher, ImageUtil.stringToBytes(request.getString("teacher_image")));}/*** 管理员 删除教师*/@RequestMapping(value = "/teacher/del", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public Result<Teacher> del(HttpRequest request) {List<String> teacherIdList = new ArrayList<>();JSONArray array = request.getJSONArray("teacher_id_list");for (int i = 0; i < array.size(); i++) {teacherIdList.add(array.getString(i));}return teacherService.del(teacherIdList);}/*** 管理员 查询所有任教老师*/@RequestMapping(value = "/teacher/qryAllList", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})@RoleAnnotation(types = {RoleEnum.admin})public ListResult<Teacher> qryAllList() {return teacherService.qryAllList();}
}

登录信息角色判断业务:

@Controller
public class LoginController {@Autowiredprivate UserService userService;@Autowiredprivate TeacherService teacherService;@Autowiredprivate StudentService studentService;//跳转登录页面@GetMapping("/login")public String login() {return "login";}//登录操作@PostMapping("/login")@ResponseBodypublic Map<String, Object> login(String userName, String password, String captcha, String type, HttpSession session) {//判断用户名、密码、用户类型、验证码是否为空if (StringUtils.isEmpty(userName) || StringUtils.isEmpty(password) || StringUtils.isEmpty(captcha) || StringUtils.isEmpty(type)) {return MapControl.getInstance().error("用户名或密码不能为空").getMap();}//获取系统生成的验证码String _captcha = (String) session.getAttribute("captcha");//先判断验证码是否正确if (!(captcha.toLowerCase()).equals(_captcha.toLowerCase())) {//验证码错误return MapControl.getInstance().error("验证码错误").getMap();}//判断用户类型if ("1".equals(type)) { //管理员验证登录User user = userService.login(userName, MD5Utils.getMD5(password)); //对密码进行加密处理,因为数据库中存储的是加密后的密码if (user != null) {session.setAttribute("user", user);session.setAttribute("type", 1);return MapControl.getInstance().success().add("data", user).getMap();} else {return MapControl.getInstance().error("用户名或密码错误").getMap();}}if ("2".equals(type)) { //老师验证登录Teacher teacher = teacherService.login(userName, MD5Utils.getMD5(password));if (teacher != null) {session.setAttribute("user", teacher);session.setAttribute("type", "2");return MapControl.getInstance().success().add("data", teacher).getMap();} else {return MapControl.getInstance().error("用户名或密码错误").getMap();}}if ("3".equals(type)) { //学生验证登录Student student = studentService.login(userName, MD5Utils.getMD5(password));if (student != null) {session.setAttribute("user", student);session.setAttribute("type", "3");return MapControl.getInstance().success().add("data", student).getMap();} else {return MapControl.getInstance().error("用户名或密码错误").getMap();}}return MapControl.getInstance().getMap();}}

源码获取:博客首页 "资源" 里下载!

Java项目:基于遗传算法学校排课系统(java+Springboot+Maven+mybatis+Vue+Mysql)相关推荐

  1. Java精品项目源码前后端分离项目第17期基于遗传算法学校排课系统

    Java精品项目源码前后端分离项目第17期基于遗传算法学校排课系统 大家好,小辰今天给大家介绍一个基于遗传算法学校排课系统,演示视频文章末尾公众号(小辰哥的java)对号查询观看即可 文章目录 Jav ...

  2. Java项目:食品溯源系统(java+Springboot+Maven+mybatis+Vue+mysql+wd)

    源码获取:博客首页 "资源" 里下载! 一.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclis ...

  3. Java项目:宠物商城系统(java+Springboot+Maven+mybatis+Vue+mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclis ...

  4. Java项目:花店商城系统(java+Springboot+Maven+mybatis+Vue+Mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 本系统功能包括: 商品的分类展示,用户的注册登录,购物车,订单结算,购物车加减,后台商品管理,分类管理,订单管理等等功能. 二 ...

  5. Java项目:精品养老院管理系统(java+Springboot+Maven+mybatis+Vue+Mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 本系统功能包括:通知公告,老人管理,护工管理,问答管理等等功能. 二.项目运行 环境配置: Jdk1.8 + Tomcat8. ...

  6. Java项目:学生管理系统(java+Springboot+Maven+mybatis+Vue+Mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 本系统功能包括: 学生管理,教师管理,课程管理,成绩管理,系统管理等等. 二.项目运行 环境配置: Jdk1.8 + Tomc ...

  7. Java项目:平行志愿管理系统(java+Springboot+Maven+mybatis+Vue+Mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 本系统功能包括: 系统管理,招生计划,学生管理,录取结果,自动分配,调剂管理等等. 二.项目运行 环境配置: Jdk1.8 + ...

  8. Java项目:医院管理系统(java+Springboot+Maven+Mybatis+Vue+Mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 本系统功能包括:医院挂号,退号,缴费,退费,检查申请单开立,科室管理,医生开单,挂号级别,检验项目开立,检查项目开立,医生接诊 ...

  9. python 排课算法_基于遗传算法的排课系统

    摘 要:随着高校的发展,在教务管理系统中使用的排课模型也变得越来越复杂,亟需一种适用于开发.重用及设计的方法.针对这种情况,本文给出了排课问题的数学模型,提出基于遗传算法解决方案.结果表明,该算法能比 ...

最新文章

  1. 创业基础(第四章: 创业风险及识别与管理) 来自高校:全国大学生创新创业实践联盟 分类:创新创业 学习规则:按序学习
  2. html5 上传超大文件,HTML5教程 如何拖拽上传大文件
  3. jQuery插件开发学习笔记
  4. delphi xe2学习笔记(1)
  5. LeetCode 451. Sort Characters By Frequency
  6. 科大星云诗社动态20210125
  7. 命令行切换到conda环境_Anaconda命令行常用操作
  8. ProtoBuffer的.proto文件生成c++
  9. .net core中的高效动态内存管理方案
  10. “创新”,我们应该如何去做?
  11. Ruby 和 Python 分析器是如何工作的?
  12. mysql索引0affected_mysql 创建索引和删除索引
  13. 在有空字符串的有序字符串数组中查找(二分)
  14. 双层PDF的制作——使用PDF4NET 3.3.6 实现
  15. cadence17.4 - Checking Hostname and HostID in license file Match Failed
  16. 为什么再次调用编辑器总是加载同一张图片?
  17. 小米HTML查看器记住密码,小米路由器 SSH 密码计算工具,开启小米SSH访问
  18. 小程序笔记 -- 封装函数
  19. MPC5748G开发笔记-----MPC5748G程序跑飞uSDHCDriverIRQHandler
  20. 微信小程序websocket连接

热门文章

  1. 连接惠普打印机(通过WIFI)
  2. 猎豹MFC--列表控件ListControl
  3. 【小白的CFD之旅】16 流程
  4. 经验分享:CSS浮动(float,clear)通俗讲解
  5. UIScrollView
  6. CentOS下安装NetBeans集成开发环境
  7. libevent源码深度剖析
  8. 明白了这十个故事,你也就参悟了人生
  9. 理解C#中的string类型
  10. 浅谈几种区块链网络攻击以及防御方案之日蚀攻击