——————————DescriptionStart——————————
运行环境 Java≥8、MySQL≥5.7
开发工具 eclipse/idea/myeclipse/sts等均可配置运行
适用 课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SpringBoot作业管理系统(java+springboot+bootstrap+html+thymeleaf+mysql+maven)
该项目分为学生、教师两个角色,主要功能如下:
学生模块
1) 我的课程:学生可在此页面自由选课 2) 我的作业:可查看选择的课程已发布的作业及完成情况,并可选择完成作业或查看详情
教师模块
1) 学生管理: I. 查询学生:可根据学生信息搜索学生,可进行修改删除操作,可进行全选批量删除和导出excel表格,可根据查询到的数据进行分页,输入页码进行跳转操作 II. 添加学生:可进行单个添加学生或excel表格导入学生 2) 教师管理: I. 查询教师:可根据教师信息搜索教师,可进行修改删除操作,可进行全选批量删除和导出excel表格,可根据查询到的数据进行分页,输入页码进行跳转操作 II. 添加教师:可进行单个添加学生或excel表格导入教师 3) 班级管理: I. 查询班级:可查看所有班级,进行删除修改等操作 II. 添加班级:可进行添加班级操作 4) 课程管理: I. 查询课程:可查看所有课程,进行修改删除操作 II. 添加班级:可进行添加课程操作 5) 作业管理: I. 查看作业完成情况:可查看每门科目项目学生作业的完成情况,可根据起止时间和课程名称进行搜索。 II. 添加作业:选择一门课程搜索题库,在题库中选择题目后进行作业发布操作 III. 编辑题库:可对题库进行增删改操作
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 4.数据库:MySql 5.7版本;
——————————CodeStart——————————
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 public String deleteAllTeacher (HttpServletRequest request, HttpServletResponse response) { String[] check = request.getParameterValues("check" ); for (String s:check ) { int id =Integer.parseInt(s); teacherManagementService.deleteTeacher(id); } return "redirect:/teacher/show_teacher_bypage" ; } @RequestMapping(value = "add_teacher",method = RequestMethod.POST) public String addTeacher (Teacher teacher,Model model) { if (teacherManagementService.selectTeacherByLoginName(teacher.getLoginName())!=null ){ model.addAttribute("msg" ,"添加失败,用户名已存在" ); return "/teacher/add_teacher" ;} int result=teacherManagementService.insertTeacher(teacher); List<Course> courses=teacherManagementService.selectAllCourse(); model.addAttribute("courses" ,courses); if (result==0 ){ model.addAttribute("msg" ,"添加失败" ); return "teacher/add_teacher" ; } model.addAttribute("msg" ,"添加成功" ); return "teacher/add_teacher" ; } @RequestMapping(value = "t_export_excel",method = RequestMethod.GET) public String exportExcel (HttpServletResponse response,HttpSession session) throws IOException { String fileName="教师信息" ; HSSFWorkbook hssfWorkbook=teacherManagementService.exprotExcel((Teacher)session .getAttribute("teacher" )); response.reset(); response.setContentType("application/vnd.ms-excel" ); response.setCharacterEncoding("utf-8" ); response.setHeader("Content-Disposition" , "attachment; filename=" + fileName ); OutputStream out=response.getOutputStream(); hssfWorkbook.write(out); return null ; } @RequestMapping(value = "t_export_excel_check",method = RequestMethod.GET)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 @Controller @RequestMapping("teacher") public class TeacherManagementController { @Autowired TeacherManagementService teacherManagementService; @RequestMapping(value = "add_teacher",method = RequestMethod.GET) public String addTeacher (Model model) { List<Course> courses=teacherManagementService.selectAllCourse(); model.addAttribute("courses" ,courses); return "teacher/add_teacher" ; } @RequestMapping(value = "show_teacher_bypage",method = RequestMethod.GET) public String showTeacherByPage (Model model, Page page, @Nullable Teacher teacher, HttpSession session) { if (page.getPageNum()==0 ) page.setPageNum(1 ); Teacher teacher1=new Teacher(); if (session.getAttribute("teacher" )!=null ) { teacher1 = (Teacher) session.getAttribute("teacher" ); } PageHelper.startPage(page.getPageNum(),10 ); List<Teacher> teachers=teacherManagementService.selectAllTeacher(); List<Course> courses=teacherManagementService.selectAllCourse(); PageInfo pageInfo=new PageInfo(teachers); model.addAttribute("teachers" ,teachers); model.addAttribute("courses" ,courses); model.addAttribute("pageInfo" ,pageInfo); return "teacher/show_teacher" ; } if (session.getAttribute("teacher" )==null ) session.setAttribute("teacher" ,teacher); if (teacher.getId()!=null ||teacher.getTeacherName()!=null ||teacher.getCourseId()!=null &&session.getAttribute("teacher" ).equals(teacher)){ session.removeAttribute("teacher" ); session.setAttribute("teacher" ,teacher);} PageHelper.startPage(page.getPageNum(),10 ); List<Teacher> teachers=teacherManagementService.selectTeacherByAny((Teacher)session.getAttribute("teacher" )); List<Course> courses=teacherManagementService.selectAllCourse(); PageInfo pageInfo=new PageInfo(teachers); model.addAttribute("teachers" ,teachers); model.addAttribute("courses" ,courses); model.addAttribute("pageInfo" ,pageInfo); return "teacher/show_teacher" ; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 return "redirect:/teacher/show_teacher_bypage" ; } } package com.hbzy.homework.controller.teacher;@Controller @RequestMapping(value = "teacher") public class HomeworkManagementController { @Autowired HomeworkManagementService homeworkManagementService; @RequestMapping(value = "release_homework",method = RequestMethod.GET) public String releaseHomework (Model model) { List<Course> courses=homeworkManagementService.selectAllCourse(); model.addAttribute("courses" ,courses); return "/teacher/release_homework" ; } @RequestMapping(value = "release_homework",method = RequestMethod.POST) public String findAllHomeworkByCourseId (Integer courseId,Model model) { List<Homework> exercises=homeworkManagementService.selectHomeworkByCourseId(courseId); List<Course> courses=homeworkManagementService.selectAllCourse(); model.addAttribute("courses" ,courses);
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 return "redirect:/teacher/show_homework" ; List<HomeworkRelease> homeworkReleases=homeworkManagementService.selectAllHomeworkReleaseByCourseId(courseId,startTime,endTime); List<Course> courses=homeworkManagementService.selectAllCourse(); model.addAttribute("hmreleases" ,homeworkReleases); model.addAttribute("courses" ,courses); return "/teacher/show_homework" ; } @RequestMapping(value = "edit_homework_bypage",method = RequestMethod.GET) public String selectAllCourse (Model model, Page page, @Nullable Integer courseId, HttpSession session) { if (courseId!=null &&courseId==0 ){ if (session.getAttribute("courseId" )!=null ) session.removeAttribute("courseId" ); return "redirect:/teacher/edit_homework_bypage" ; } if (page.getPageNum()==0 ) page.setPageNum(1 ); Integer cid=null ; if (session.getAttribute("courseId" )!=null ) cid=(Integer) session.getAttribute("courseId" ); if (courseId==null && cid==null ){ PageHelper.startPage(page.getPageNum(),8 ); List<Homework> exercises=homeworkManagementService.selectAllHomework(); List<Course> courses=homeworkManagementService.selectAllCourse(); PageInfo pageInfo=new PageInfo(exercises); model.addAttribute("pageInfo" ,pageInfo); model.addAttribute("courses" ,courses); model.addAttribute("exercises" ,exercises); return "/teacher/edit_homework" ; } if (session.getAttribute("courseId" )==null ) session.setAttribute("courseId" ,courseId); if (courseId!=null &&!courseId.equals(session.getAttribute("courseId" ))){ session.removeAttribute("courseId" ); session.setAttribute("courseId" ,courseId); } PageHelper.startPage(page.getPageNum(),8 ); List<Homework> exercises=homeworkManagementService.selectHomeworkByCourseId((Integer) session.getAttribute("courseId" )); List<Course> courses=homeworkManagementService.selectAllCourse(); PageInfo pageInfo=new PageInfo(exercises);
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 } @RequestMapping(value = "upload_teacher",method = RequestMethod.POST,consumes = MediaType.MULTIPART_FORM_DATA_VALUE) public String uploadTeacher (@RequestParam("teacherExcel") MultipartFile teacherExcel, Model model, Integer courseId) throws IOException { InputStream inputStream = teacherExcel.getInputStream(); FileInputStream fileInputStream=(FileInputStream) inputStream; String fileName=teacherExcel.getOriginalFilename().toLowerCase(); if (fileName.endsWith(".xls" )||fileName.endsWith(".xlsx" )){ String msgup=teacherManagementService.uploadAddTeacher(fileInputStream,fileName,courseId); model.addAttribute("msgup" ,msgup); return "teacher/add_teacher" ; }else { model.addAttribute("msgup" ,"添加失败,请选择正确的文件类型" ); return "teacher/add_teacher" ; } } @RequestMapping(value = "update_teacher/{id}",method = RequestMethod.GET) public String updateTeacher (@PathVariable(name = "id") int id, Model model) { List<Course> courses=teacherManagementService.selectAllCourse(); model.addAttribute("courses" ,courses); model.addAttribute("teacher" ,teacherManagementService.selectTeacherById(id)); return "teacher/update_teacher" ; } @RequestMapping(value = "update_teacher",method = RequestMethod.POST) public String updateTeacher (Teacher teacher, Model model) { teacherManagementService.updateTeacher(teacher); return "redirect:/teacher/show_teacher_bypage" ; } } package com.hbzy.homework.controller.teacher;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 @Controller public class LoginController { @Autowired LoginService loginService; @RequestMapping(value = "/",method = RequestMethod.GET) public String index () { return "login/login" ; } @RequestMapping(value = "login",method = RequestMethod.GET) public String userlogin () { return "login/login" ; } @RequestMapping(value = "login",method = RequestMethod.POST) public String userLogin (@Param("flag") String flag,@Param("loginName") String loginName,@Param("password") String password,Model model,HttpSession session) { int loginSuccess=0 ; if (flag.equals("学生" )){ Student student=new Student(); student.setLoginName(loginName); student.setPassword(password); loginSuccess=loginService.studentLogin(student); } else { Teacher teacher=new Teacher(); teacher.setLoginName(loginName); teacher.setPassword(password); loginSuccess=loginService.teacherLogin(teacher); } if (loginSuccess!=0 &&flag.equals("学生" )) { session.setAttribute("username" ,loginName); session.setAttribute("sid" ,loginSuccess); return "redirect:student/student_main" ; } else if (loginSuccess==1 &&flag.equals("教师" )){ session.setAttribute("username" ,loginName); return "redirect:teacher/teacher_main" ; } model.addAttribute("msg" ,"登录失败,账号或密码错误" );
——————————PayStart——————————
项目链接: https://javayms.github.io?id=061422272105200af https://javayms.pages.dev?id=061422272105200af