基于javaweb+mysql的springboot教务课程管理系统(java+springboot+maven+vue+layui+elementui+mysql)
私信源码获取及调试交流
运行环境
Java≥8、MySQL≥5.7、Node.js≥10
开发工具
后端:eclipse/idea/myeclipse/sts等均可配置运行
前端:WebStorm/VSCode/HBuilderX等均可
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SpringBoot教务课程管理系统(java+springboot+maven+vue+layui+elementui+mysql)
管理员
admin 123456
教师
teacher 123456(工号:1631521792950)
学生
stu01 123456
stu02 123456
stu03 123456
项目介绍
基于SpringBoot Vue教务/课程管理系统
角色:管理员、社团管理员、社团成员
管理员:班级信息管理、课程信息管理、教室信息管理、活动/通知管理、用户信息管理、授课工作安排、上课时间安排
教师:工作安排、活动/通知查看、上课安排
学生:工作安排、活动/通知查看、学生、上课安排
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 4.数据库:MySql 5.7/8.0版本均可; 5.是否Maven项目:是;
技术栈
后端:SpringBoot+Mybaits
前端:layui+Vue+ELementUI
使用说明
项目运行: 1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置; 4. 运行项目,控制台提示运行成功后再去运行前端项目; 5. 管理员用户名密码:admin/admin 普通用户名密码:user/123456
开发背景、系统描述、功能描述、项目预览、系统设计、角色分析、系统流程、开发工具介绍、开发技术介绍、数据库设计、数据库分析、数据库概念设计、结构说明、数据表关系、系统通用模块、系统登录实现、系统推出实现、用户信息修改、用户密码修改、活动管理模块、活动信息展示、活动信息添加、活动信息修改、活动信息删除、通知管理模块、通知信息展示:
用户登录页面:
后台系统首页展示:
后台教室管理页面展示:
授课安排展示页面:
授课时间安排展示页面:
Users user = cacheHandle.getUserInfoCache(token);
return success(user);
}
@RequestMapping(value = "updInfo", method = RequestMethod.POST)
@ResponseBody
public String updInfo(String token, Users user){
Log.info("修改用户信息,{}", user);
usersService.update(user);
cacheHandle.addUserCache(token, user);
return success();
}
@RequestMapping(value = "updPwd", method = RequestMethod.POST)
@ResponseBody
public String updPwd(String token, String newPwd) {
Log.info("修改用户密码,{}", newPwd);
Users user = cacheHandle.getUserInfoCache(token);
user.setPassWord(newPwd);
usersService.update(user);
cacheHandle.addUserCache(token, user);
return success();
}
@RequestMapping("/checkPwd")
@ResponseBody
public String rePwd(String oldPwd, String token) {
Users user = cacheHandle.getUserInfoCache(token);
if(oldPwd.equals(user.getPassWord())) {
/**
* 系统请求响应控制器
* 班级信息
*/
@Controller
@RequestMapping("/grades")
public class GradesController extends JSONController {
protected static final Logger Log = LoggerFactory.getLogger(GradesController.class);
@Autowired
private GradesService gradesService;
@RequestMapping("")
public String index() {
return "pages/grades";
}
@RequestMapping("/all")
@ResponseBody
public String getAll(){
Log.info("获取全部的年级信息");
List<Grades> list = gradesService.getAll();
return success(list);
}
@RequestMapping("/page")
@ResponseBody
public String getPageInfos(Long pageIndex, Long pageSize,
Grades grades) {
Log.info("分页查找班级信息信息,当前页码:{},"
+ "每页数据量:{}, 模糊查询,附加参数:{}", pageIndex,
return success(notices);
}
@RequestMapping("/add")
@ResponseBody
public String addInfo(Notices notices) {
notices.setId(IDUtils.makeIDByCurrent());
Log.info("添加系统通知信息,传入参数:{}", notices);
noticesService.add(notices);
return success();
}
@RequestMapping("/upd")
@ResponseBody
public String updInfo(Notices notices) {
Log.info("修改系统通知信息,传入参数:{}", notices);
noticesService.update(notices);
return success();
}
@RequestMapping("/del")
@ResponseBody
public String delInfo(String id) {
Log.info("删除系统通知信息, ID:{}", id);
Notices notices = noticesService.getOne(id);
noticesService.delete(notices);
return success();
}
@ExceptionHandler(Exception.class)
public String getInfo(String id) {
Log.info("查找指定授课安排信息,ID:{}", id);
TeacherWork teacherWork = teacherWorkService.getOne(id);
return success(teacherWork);
}
@RequestMapping("/add")
@ResponseBody
public String addInfo(TeacherWork teacherWork) {
teacherWork.setId(IDUtils.makeIDByCurrent());
teacherWork.setCreateTime(DateUtils.getNowDate());
Log.info("添加授课安排信息,传入参数:{}", teacherWork);
teacherWorkService.add(teacherWork);
return success();
}
@RequestMapping("/upd")
@ResponseBody
public String updInfo(TeacherWork teacherWork) {
Log.info("修改授课安排信息,传入参数:{}", teacherWork);
teacherWorkService.update(teacherWork);
return success();
}
@RequestMapping("/del")
@ResponseBody
public String delInfo(String id) {
Log.info("删除授课安排信息, ID:{}", id);
TeacherWork teacherWork = teacherWorkService.getOne(id);
teacherWorkService.delete(teacherWork);
return success();
}
@ExceptionHandler(Exception.class)
@ResponseBody
public String exception(Exception e) {
e.printStackTrace();
public String getPageInfos(Long pageIndex, Long pageSize,
Grades grades) {
Log.info("分页查找班级信息信息,当前页码:{},"
+ "每页数据量:{}, 模糊查询,附加参数:{}", pageIndex,
pageSize, grades);
Page page = gradesService.getPageInfo(pageIndex, pageSize, grades);
return success(page);
}
@RequestMapping("/info")
@ResponseBody
public String getInfo(String id) {
Log.info("查找指定班级信息信息,ID:{}", id);
Grades grades = gradesService.getOne(id);
return success(grades);
}
@RequestMapping("/add")
@ResponseBody
public String addInfo(Grades grades) {
grades.setId(IDUtils.makeIDByCurrent());
grades.setCreateTime(DateUtils.getNowDate());
Log.info("添加班级信息信息,传入参数:{}", grades);
gradesService.add(grades);
return success();
}
@RequestMapping("/upd")
@ResponseBody
public String updInfo(Grades grades) {
teacherWorkService.add(teacherWork);
return success();
}
@RequestMapping("/upd")
@ResponseBody
public String updInfo(TeacherWork teacherWork) {
Log.info("修改授课安排信息,传入参数:{}", teacherWork);
teacherWorkService.update(teacherWork);
return success();
}
@RequestMapping("/del")
@ResponseBody
public String delInfo(String id) {
Log.info("删除授课安排信息, ID:{}", id);
TeacherWork teacherWork = teacherWorkService.getOne(id);
teacherWorkService.delete(teacherWork);
return success();
}
@ExceptionHandler(Exception.class)
@ResponseBody
public String exception(Exception e) {
e.printStackTrace();
return error();
}
}
usersService.update(user);
cacheHandle.addUserCache(token, user);
return success();
}
@RequestMapping(value = "updPwd", method = RequestMethod.POST)
@ResponseBody
public String updPwd(String token, String newPwd) {
Log.info("修改用户密码,{}", newPwd);
Users user = cacheHandle.getUserInfoCache(token);
user.setPassWord(newPwd);
usersService.update(user);
cacheHandle.addUserCache(token, user);
return success();
}
@RequestMapping("/checkPwd")
@ResponseBody
public String rePwd(String oldPwd, String token) {
Users user = cacheHandle.getUserInfoCache(token);
if(oldPwd.equals(user.getPassWord())) {
return success(true);
}else {
return success(false);
}
}
@RequestMapping("/show")
@ResponseBody
public String getShowInfo(){
Map<String, Object> resl = new HashMap<String, Object>();
Integer total_stu = studentsService.getTotalStudents();
Integer total_tea = teachersService.getTotalTeacher();
@RequestMapping("/page")
@ResponseBody
public String getPageInfos(Long pageIndex, Long pageSize,
Teachers teachers) {
Log.info("分页查找教师信息信息,当前页码:{},"
+ "每页数据量:{}, 模糊查询,附加参数:{}", pageIndex,
pageSize, teachers);
Page page = teachersService.getPageInfo(pageIndex, pageSize, teachers);
return success(page);
}
@RequestMapping("/info")
@ResponseBody
public String getInfo(String id) {
Log.info("查找指定教师信息信息,ID:{}", id);
Teachers teachers = teachersService.getOne(id);
return success(teachers);
}
@RequestMapping("/add")
@ResponseBody
public String addInfo(Teachers teachers) {
Log.info("添加教师信息信息,传入参数:{}", teachers);
teachersService.add(teachers);
return success();
}
@RequestMapping("/upd")
@ResponseBody
public String updInfo(Teachers teachers) {
Log.info("修改教师信息信息,传入参数:{}", teachers);
teachersService.update(teachers);
return success();
}
@RequestMapping("/del")
@ResponseBody
public String delInfo(String id) {
* 系统请求响应控制器
* 教师信息
*/
@Controller
@RequestMapping("/teachers")
public class TeachersController extends JSONController {
protected static final Logger Log = LoggerFactory.getLogger(TeachersController.class);
@Autowired
private TeachersService teachersService;
@RequestMapping("")
public String index() {
return "pages/teachers";
}
@RequestMapping("/page")
@ResponseBody
public String getPageInfos(Long pageIndex, Long pageSize,
Teachers teachers) {
Log.info("分页查找教师信息信息,当前页码:{},"
+ "每页数据量:{}, 模糊查询,附加参数:{}", pageIndex,
pageSize, teachers);
Page page = teachersService.getPageInfo(pageIndex, pageSize, teachers);
return success(page);
}
@RequestMapping("/info")
@ResponseBody
public String getInfo(String id) {
Log.info("查找指定教师信息信息,ID:{}", id);
Teachers teachers = teachersService.getOne(id);
return success(teachers);
}
@RequestMapping("/add")
@ResponseBody
+ "每页数据量:{}, 模糊查询,附加参数:{}", pageIndex,
pageSize, grades);
Page page = gradesService.getPageInfo(pageIndex, pageSize, grades);
return success(page);
}
@RequestMapping("/info")
@ResponseBody
public String getInfo(String id) {
Log.info("查找指定班级信息信息,ID:{}", id);
Grades grades = gradesService.getOne(id);
return success(grades);
}
@RequestMapping("/add")
@ResponseBody
public String addInfo(Grades grades) {
grades.setId(IDUtils.makeIDByCurrent());
grades.setCreateTime(DateUtils.getNowDate());
Log.info("添加班级信息信息,传入参数:{}", grades);
gradesService.add(grades);
return success();
}
@RequestMapping("/upd")
@ResponseBody
public String updInfo(Grades grades) {
Log.info("修改班级信息信息,传入参数:{}", grades);
gradesService.update(grades);
return success();
}
@RequestMapping("/del")
@ResponseBody
public String delInfo(String id) {
@RequestMapping("/upd")
@ResponseBody
public String updInfo(Students students) {
Log.info("修改学生信息信息,传入参数:{}", students);
studentsService.update(students);
return success();
}
@RequestMapping("/del")
@ResponseBody
public String delInfo(String id) {
Log.info("删除学生信息信息, ID:{}", id);
Students students = studentsService.getOne(id);
studentsService.delete(students);
return success();
}
@ExceptionHandler(Exception.class)
@ResponseBody
public String exception(Exception e) {
e.printStackTrace();
return error();
}
}
/**
* 系统请求响应控制器
* 课程信息
*/
@Controller
@RequestMapping("/projects")
public class ProjectsController extends JSONController {
protected static final Logger Log = LoggerFactory.getLogger(ProjectsController.class);
@Autowired
private ProjectsService projectsService;
@RequestMapping("")
public String index() {
return "pages/projects";
}
@RequestMapping("/all")
@ResponseBody
public String getAll(){
Log.info("获取全部的年级信息");
List<Projects> list = projectsService.getAll();
return success(list);
}
@RequestMapping("/allow")
@ResponseBody
public String getAllowList(String gradeId){
Log.info("获取当前班级可以选择的课程列表");
*/
@Controller
@RequestMapping("/users")
public class UsersController extends JSONController {
protected static final Logger Log = LoggerFactory.getLogger(UsersController.class);
@Autowired
private UsersService usersService;
@RequestMapping("")
public String index() {
return "pages/users";
}
@RequestMapping("/page")
@ResponseBody
public String getPageInfos(Long pageIndex, Long pageSize,
Users users) {
Log.info("分页查找系统用户信息,当前页码:{},"
+ "每页数据量:{}, 模糊查询,附加参数:{}", pageIndex,
pageSize, users);
Page page = usersService.getPageInfo(pageIndex, pageSize, users);
return success(page);
}
@RequestMapping("/info")
@ResponseBody
public String getInfo(String id) {
Log.info("查找指定系统用户信息,ID:{}", id);
Users users = usersService.getOne(id);
return success(users);
}
@RequestMapping("/add")
@ResponseBody
public String addInfo(Users users) {
users.setId(IDUtils.makeIDByCurrent());
users.setCreateTime(DateUtils.getNowDate());
Log.info("添加系统用户信息,传入参数:{}", users);
usersService.add(users);
return success();
}
@RequestMapping(value = "updPwd", method = RequestMethod.POST)
@ResponseBody
public String updPwd(String token, String newPwd) {
Log.info("修改用户密码,{}", newPwd);
Users user = cacheHandle.getUserInfoCache(token);
user.setPassWord(newPwd);
usersService.update(user);
cacheHandle.addUserCache(token, user);
return success();
}
@RequestMapping("/checkPwd")
@ResponseBody
public String rePwd(String oldPwd, String token) {
Users user = cacheHandle.getUserInfoCache(token);
if(oldPwd.equals(user.getPassWord())) {
return success(true);
}else {
return success(false);
}
}
@RequestMapping("/show")
@ResponseBody
public String getShowInfo(){
Map<String, Object> resl = new HashMap<String, Object>();
Integer total_stu = studentsService.getTotalStudents();
Integer total_tea = teachersService.getTotalTeacher();
public String logout(String token) {
Log.info("用户退出系统并移除登录信息");
cacheHandle.removeUserCache(token);
return success();
}
@RequestMapping(value = "info", method = RequestMethod.GET)
@ResponseBody
public String info(String token){
Users user = cacheHandle.getUserInfoCache(token);
return success(user);
}
@RequestMapping(value = "updInfo", method = RequestMethod.POST)
@ResponseBody
public String updInfo(String token, Users user){
Log.info("修改用户信息,{}", user);
usersService.update(user);
cacheHandle.addUserCache(token, user);
return success();
}
@RequestMapping(value = "updPwd", method = RequestMethod.POST)
@ResponseBody
public String updPwd(String token, String newPwd) {
Log.info("修改用户密码,{}", newPwd);
Users user = cacheHandle.getUserInfoCache(token);
user.setPassWord(newPwd);
usersService.update(user);
cacheHandle.addUserCache(token, user);
@Controller
@RequestMapping("/users")
public class UsersController extends JSONController {
protected static final Logger Log = LoggerFactory.getLogger(UsersController.class);
@Autowired
private UsersService usersService;
@RequestMapping("")
public String index() {
return "pages/users";
}
@RequestMapping("/page")
@ResponseBody
public String getPageInfos(Long pageIndex, Long pageSize,
Users users) {
Log.info("分页查找系统用户信息,当前页码:{},"
+ "每页数据量:{}, 模糊查询,附加参数:{}", pageIndex,
pageSize, users);
Page page = usersService.getPageInfo(pageIndex, pageSize, users);
return success(page);
}
@RequestMapping("/info")
@ResponseBody
public String getInfo(String id) {
Log.info("查找指定系统用户信息,ID:{}", id);
Users users = usersService.getOne(id);
return success(users);
}
@RequestMapping("/add")
@ResponseBody
public String addInfo(Users users) {
users.setId(IDUtils.makeIDByCurrent());
users.setCreateTime(DateUtils.getNowDate());
Log.info("添加系统用户信息,传入参数:{}", users);
usersService.add(users);
return success();
}
Log.info("分页查找课程信息信息,当前页码:{},"
+ "每页数据量:{}, 模糊查询,附加参数:{}", pageIndex,
pageSize, projects);
Page page = projectsService.getPageInfo(pageIndex, pageSize, projects);
return success(page);
}
@RequestMapping("/info")
@ResponseBody
public String getInfo(String id) {
Log.info("查找指定课程信息信息,ID:{}", id);
Projects projects = projectsService.getOne(id);
return success(projects);
}
@RequestMapping("/add")
@ResponseBody
public String addInfo(Projects projects) {
projects.setId(IDUtils.makeIDByCurrent());
projects.setCreateTime(DateUtils.getNowDate());
Log.info("添加课程信息信息,传入参数:{}", projects);
projectsService.add(projects);
return success();
}
@RequestMapping("/upd")
@ResponseBody
public String updInfo(Projects projects) {
Log.info("修改课程信息信息,传入参数:{}", projects);
projectsService.update(projects);
return success();
}
@RequestMapping("/del")
@ResponseBody
public String delInfo(String id) {