基于javaweb+mysql的ssm学生成绩管理系统(spring+jsp+mysql+tomcat)

基于javaweb+mysql的ssm学生成绩管理系统(spring+jsp+mysql+tomcat)

私信源码获取及调试交流

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb的SSM学生成绩管理系统(spring+jsp+mysql+tomcat)

分为:

教师、学生、管理员


管理员:

admin	123456

教师:

t1	123456

学生:

s1	123456

*[管理员]可以继续添加[教师]和[学生]


	@RequestMapping(value = "/delete", method = RequestMethod.GET)
	public String deleteStu(Course course) {
		if (courseService.deleteCourse(course)) {
			return "redirect:/course/getCourse";
		} else {
			return "MainPage";
		}
	}

	@RequestMapping(value = "/findCourse", method = RequestMethod.POST)
	public String findCourse(Model m, Course course) {
		List courses = courseService.findCourse(course);
		m.addAttribute("courses", courses);
		return "CourseInfoProtect";
	}
}

@Controller
public class LoginController {

	private LoginService loginService = new LoginServiceImpl();

	/**
	 * 登录查询出来的学生实体放入session
	 *
	 * @param
	 * @param session
	 * @return
	 */

	@RequestMapping(value = "/login", method = RequestMethod.POST)
	public String login(User user, HttpSession session) {
		/**
		 * user表里面的数据必须来自其他两个表

/**
 *
 */
@Controller
// 注解绑定,可以通过url进行访问
@RequestMapping("/score")

public class ScoreController {

	private ScoreService scoService = new ScoreServiceImpl();
	private TeacherService teaService = new TeacherServiceImpl();

	@RequestMapping("/getScore")

	public String getScore(Model m) {
		List<Score> scos = scoService.getScore();

		User user = (User) ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest().getSession().getAttribute("user");
		if (user.getRole().equalsIgnoreCase("学生")) {
			scos = scos.stream().filter(o -> o.getStudentNo().equalsIgnoreCase(user.getUsername())).collect(Collectors.toList());
		}

		List<Teacher> teas = teaService.getTeacher();

		if (user.getRole().equalsIgnoreCase("教师")) {
			teas = teas.stream().filter(o -> o.getTeacherNo().equalsIgnoreCase(user.getUsername())).collect(Collectors.toList());
		}
		m.addAttribute("teas", teas);// 存在model 中

		m.addAttribute("scos", scos);
		return "ScoreInfoProtect";
	}

		if (null != stu) {
			m.addAttribute("stu", stu);
			m.addAttribute("courses", courses);
			m.addAttribute("teas", teas);
			return "ElectiveInfoAdd";
		} else {
			return "MainPage";
		}
	}

	@RequestMapping("/add")
	public String addElective(Elective elective) {
		boolean result = eleService.addElective(elective);
		if (result) {
			return "redirect:/elective/getElective";
		} else {
			return "MainPage";
		}
	}

	@RequestMapping(value = "/find", method = RequestMethod.POST)
	public String findElective(Model m, Elective elective) {
		List eles = eleService.findElective(elective);
		m.addAttribute("electives", eles);
		return "ElectiveInfoProtect";
	}

	@RequestMapping(value = "/delete", method = RequestMethod.GET)
	public String deleteElective(Elective elective) {
		if (eleService.deleteElective(elective)) {
			return "redirect:/elective/getElective";
		} else {
			return "MainPage";
		}
	}

	@RequestMapping("/getEleById")
	public String getEleById(Model m, Elective elective) {
		Elective s = eleService.getEleById(elective.getId());
		m.addAttribute("electives", s);
		return "ElectiveInfoUpdate";
	}

	@RequestMapping(value = "/update", method = RequestMethod.POST)
	public String updateEle(Elective elective) {
		if (eleService.updateEle(elective)) {
			return "redirect:/elective/getElective";
		} else {
			return "MainPage";
		}
	}
}
/*
 * To change this license header, choose License Headers in Project Properties.
        User user = (User) ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest().getSession().getAttribute("user");

        //定义了一个集合类,保存所有的学生对象
        List<Student> stus = stuService.getStudent();
        List<Subject> subs = subService.getSubject();
        List<Grade> gras = graService.getGrade();
        List<String> listTemp = new <String>ArrayList();
        for (int i = 0; i < gras.size(); i++) {
            System.out.print(gras.get(i).getGradeName());
            if (!listTemp.contains(gras.get(i).getGradeName())) {
                listTemp.add(gras.get(i).getGradeName());
            }
        }

        if (user.getRole().equalsIgnoreCase("学生")) {
            stus = stus.stream().filter(o -> o.getStudentNo().equalsIgnoreCase(user.getUsername())).collect(Collectors.toList());
        }

        m.addAttribute("stus", stus);//存在model 中
        m.addAttribute("gras", listTemp);//存在model 中
        m.addAttribute("subs", subs);
        return "StudentInfoProtect";//调用这个jsp  界面
    }

    @RequestMapping(value = "/findStudent", method = RequestMethod.POST)
    public String findStudent(Model m, Student stu) {
        List stus = stuService.findStudent(stu);
        m.addAttribute("stus", stus);
        List<Subject> subs = subService.getSubject();
        List<Grade> gras = graService.getGrade();
        List<String> listTemp = new <String>ArrayList();
        for (int i = 0; i < gras.size(); i++) {
            System.out.print(gras.get(i).getGradeName());
            if (!listTemp.contains(gras.get(i).getGradeName())) {
                listTemp.add(gras.get(i).getGradeName());
            }
        }
        m.addAttribute("gras", listTemp);
        m.addAttribute("subs", subs);
        return "StudentInfoProtect";
    }

    @RequestMapping("/getStuById")
    public String getStuById(Model m, Student stu) {

		m.addAttribute("scos", scos);
		return "ScoreInfoProtect";
	}

	@RequestMapping(value = "/findScore", method = RequestMethod.POST)
	public String findScore(Model m, Teacher tea) {

		List scos = scoService.findScore(tea);
		List teas = teaService.getTeacher();
		m.addAttribute("teas", teas);// 存在model 中
		m.addAttribute("scos", scos);
		return "ScoreInfoProtect";
	}

	@RequestMapping("/getScoreById")
	public String getScoreById(Model m, Score sco) {
		Score s = scoService.getScoreById(sco.getId());
		m.addAttribute("scos", s);
		return "ScoreInfoUpdate";
	}

	@RequestMapping(value = "/updateScore", method = RequestMethod.POST)
	public String updateScore(Score sco) {
		if (scoService.updateScore(sco)) {
			return "redirect:/score/getScore";
		} else {
			return "MainPage";
		}
	}

	// @RequestMapping(value = "/delete", method = RequestMethod.GET)
	// public String deleteScore(Score sco) {
	// if (scoService.deleteScore(sco)) {
	// return "redirect:/score/getScore";
	// } else {
	// return "MainPage";
	// }
	// }
}
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */


/**
 *
 */
@Controller
// 注解绑定,可以通过url进行访问
@RequestMapping("/grade")
public class GradeController {

	private GradeService graService = new GradeServiceImpl();
	private SubjectService subService = new SubjectServiceImpl();

	@RequestMapping("/add")
	public String addGrade(Grade gra) {
		boolean result = graService.addGrade(gra);
		if (result) {
			return "redirect:/grade/getGrade";
		} else {
			return "MainPage";
		}

	}

	@RequestMapping("/getGrade")
	public String getGrade(Model m) {
		// 定义了一个集合类,保存所有的学生对象
		List gras = graService.getGrade();
		m.addAttribute("gras", gras);// 存在model 中
		List<Subject> subs = subService.getSubject();
		m.addAttribute("subs", subs);
		return "GradeInfoProtect";// 调用这个jsp 界面
	}

	@RequestMapping(value = "/findGrade", method = RequestMethod.POST)
	public String findGrade(Model m, Grade gra) {
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 */
@Controller
@RequestMapping("/subject")
public class SubjectController {

    private SubjectService subService = new SubjectServiceImpl();

    @RequestMapping("/getSubject")
    public String getSubject(Model b) {
        //定义了一个集合类,保存所有的院系对象
        List sub = subService.getSubject();
        b.addAttribute("subs", sub);//存在model 中
        return "SubjectInfoProtect";//调用这个jsp  界面
    }

    @RequestMapping("/add")
    public String addSubject(Subject sub) {
        boolean result = subService.addSubject(sub);
        if (result) //重定向
        {
            return "redirect:/subject/getSubject";
        } else {
            return "MainPage";
        }

    }

    @RequestMapping(value = "/getSubjectForAdd", method = RequestMethod.GET)
    public String getSubjectForAdd(Model model) {
        List<Subject> subs = null;      
       subs = subService.getSubjectForAdd();       
        model.addAttribute("subs", subs);
        return "/subject/SubjectInfoAdd";
    }

    @RequestMapping("/getSubById")

	@RequestMapping(value = "/deleteGra", method = RequestMethod.GET)
	public String deleteGra(Grade gra) {
		if (graService.deleteGra(gra)) {
			return "redirect:/grade/getGrade";
		} else {
			return "MainPage";
		}
	}

}

public class LoginFilter implements Filter {

    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }

    @Override
    public void doFilter(ServletRequest request, ServletResponse response,
            FilterChain chain) throws IOException, ServletException {
        // 获得在下面代码中要用的request,response,session对象
        HttpServletRequest servletRequest = (HttpServletRequest) request;
        HttpServletResponse servletResponse = (HttpServletResponse) response;
        HttpSession session = servletRequest.getSession();

        // 获得用户请求的URI
        String path = servletRequest.getRequestURI();
        
        // 从session里取学生信息
        Object stu = session.getAttribute("student");
        Object user = session.getAttribute("user");
        // 登陆页面无需过滤
        //图片,样式不能过滤
        if(path.indexOf("LoginPage.jsp") > 0 || path.indexOf("login") > 0||

@Controller
//注解绑定,可以通过url进行访问
@RequestMapping("/student")
public class StudentController {

    private StudentService stuService = new StudentServiceImpl();
    private SubjectService subService = new SubjectServiceImpl();
    private GradeService graService = new GradeServiceImpl();
    private CourseService courseService = new CourseServiceImpl();

    @RequestMapping("/add")
    public String addStudent(Student stu) {
        boolean result = stuService.addStudent(stu);
        if (result) {
            return "redirect:/student/getStudent";
        } else {
            return "MainPage";
        }

    }

    @RequestMapping("/preAdd")
    public String toAddStudent(Student stu, Model m) {
        List<Subject> subs = subService.getSubject();
        List<Grade> gras = graService.getGrade();
        List<String> listTemp = new <String>ArrayList();
        for (int i = 0; i < gras.size(); i++) {
            System.out.print(gras.get(i).getGradeName());
            if (!listTemp.contains(gras.get(i).getGradeName())) {
                listTemp.add(gras.get(i).getGradeName());
            }
        }
        m.addAttribute("gras", listTemp);
        m.addAttribute("subs", subs);
        if (stu != null) {
            return "StudentInfoAdd";
        } else {
            return "MainPage";
        }
    }

    @RequestMapping("/getStudent")
    public String getStudent(Model m) {
        User user = (User) ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest().getSession().getAttribute("user");

        //定义了一个集合类,保存所有的学生对象
        List<Student> stus = stuService.getStudent();
        List<Subject> subs = subService.getSubject();
    }

    @RequestMapping("/add")
    public String addSubject(Subject sub) {
        boolean result = subService.addSubject(sub);
        if (result) //重定向
        {
            return "redirect:/subject/getSubject";
        } else {
            return "MainPage";
        }

    }

    @RequestMapping(value = "/getSubjectForAdd", method = RequestMethod.GET)
    public String getSubjectForAdd(Model model) {
        List<Subject> subs = null;      
       subs = subService.getSubjectForAdd();       
        model.addAttribute("subs", subs);
        return "/subject/SubjectInfoAdd";
    }

    @RequestMapping("/getSubById")
    public String getSubById(Model m, Subject sub) {
        Subject s = subService.getSubById(sub.getId());
        m.addAttribute("sub", s);
        return "SubjectInfoUpdate";
    }

    @RequestMapping(value = "/findSubject", method = RequestMethod.POST)
    public String findSubject(Model m, Subject sub) {
        List subs = subService.findSubject(sub);
        m.addAttribute("subs", subs);
        return "SubjectInfoProtect";
    }

    @RequestMapping(value = "/updateSub", method = RequestMethod.POST)
    public String updateSub(Subject sub) {
        if (subService.updateSub(sub)) {
            return "redirect:/subject/getSubject";
        } else {
            return "MainPage";
        }
        } else {
            return "MainPage";
        }

    }

    @RequestMapping(value = "/getSubjectForAdd", method = RequestMethod.GET)
    public String getSubjectForAdd(Model model) {
        List<Subject> subs = null;      
       subs = subService.getSubjectForAdd();       
        model.addAttribute("subs", subs);
        return "/subject/SubjectInfoAdd";
    }

    @RequestMapping("/getSubById")
    public String getSubById(Model m, Subject sub) {
        Subject s = subService.getSubById(sub.getId());
        m.addAttribute("sub", s);
        return "SubjectInfoUpdate";
    }

    @RequestMapping(value = "/findSubject", method = RequestMethod.POST)
    public String findSubject(Model m, Subject sub) {
        List subs = subService.findSubject(sub);
        m.addAttribute("subs", subs);
        return "SubjectInfoProtect";
    }

    @RequestMapping(value = "/updateSub", method = RequestMethod.POST)
    public String updateSub(Subject sub) {
        if (subService.updateSub(sub)) {
            return "redirect:/subject/getSubject";
        } else {
            return "MainPage";
        }
    }

    @RequestMapping(value = "/deleteSub", method = RequestMethod.GET)
    public String deleteSub(Subject sub) {
        if (subService.deleteSub(sub)) {
            return "redirect:/subject/getSubject";
        } else {
            return "MainPage";
        }
    }
}
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
			return "redirect:/elective/getElective";
		} else {
			return "MainPage";
		}
	}

	@RequestMapping(value = "/find", method = RequestMethod.POST)
	public String findElective(Model m, Elective elective) {
		List eles = eleService.findElective(elective);
		m.addAttribute("electives", eles);
		return "ElectiveInfoProtect";
	}

	@RequestMapping(value = "/delete", method = RequestMethod.GET)
	public String deleteElective(Elective elective) {
		if (eleService.deleteElective(elective)) {
			return "redirect:/elective/getElective";
		} else {
			return "MainPage";
		}
	}

	@RequestMapping("/getEleById")
	public String getEleById(Model m, Elective elective) {
		Elective s = eleService.getEleById(elective.getId());
		m.addAttribute("electives", s);
		return "ElectiveInfoUpdate";
	}

	@RequestMapping(value = "/update", method = RequestMethod.POST)
	public String updateEle(Elective elective) {
		if (eleService.updateEle(elective)) {
			return "redirect:/elective/getElective";
		} else {
			return "MainPage";
		}
	}
}
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */


/**
 *
 */
@Controller
// 注解绑定,可以通过url进行访问
@RequestMapping("/grade")
public class GradeController {

	private GradeService graService = new GradeServiceImpl();
	private SubjectService subService = new SubjectServiceImpl();

	@RequestMapping("/add")
	public String addGrade(Grade gra) {
		boolean result = graService.addGrade(gra);
		if (result) {
			return "redirect:/grade/getGrade";
		} else {
			return "MainPage";
		}

	}

	@RequestMapping("/getGrade")
	public String getGrade(Model m) {
		// 定义了一个集合类,保存所有的学生对象
		List gras = graService.getGrade();
		m.addAttribute("gras", gras);// 存在model 中
		List<Subject> subs = subService.getSubject();
		m.addAttribute("subs", subs);
		return "GradeInfoProtect";// 调用这个jsp 界面
	}

	@RequestMapping(value = "/findGrade", method = RequestMethod.POST)
	public String findGrade(Model m, Grade gra) {
		List gras = graService.findGrade(gra);
		m.addAttribute("gras", gras);
		List<Subject> subs = subService.getSubject();
		m.addAttribute("subs", subs);
		return "GradeInfoProtect";
	}

	@RequestMapping("/getGraById")
	public String getGraById(Model m, Grade gra) {
		Grade s = graService.getGraById(gra.getId());
		m.addAttribute("gra", s);
		return "GradeInfoUpdate";
	}
		if (eleService.deleteElective(elective)) {
			return "redirect:/elective/getElective";
		} else {
			return "MainPage";
		}
	}

	@RequestMapping("/getEleById")
	public String getEleById(Model m, Elective elective) {
		Elective s = eleService.getEleById(elective.getId());
		m.addAttribute("electives", s);
		return "ElectiveInfoUpdate";
	}

	@RequestMapping(value = "/update", method = RequestMethod.POST)
	public String updateEle(Elective elective) {
		if (eleService.updateEle(elective)) {
			return "redirect:/elective/getElective";
		} else {
			return "MainPage";
		}
	}
}
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

        }
    }

}
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 */
@Controller
//注解绑定,可以通过url进行访问
@RequestMapping("/teacher")
public class TeacherController {

    private TeacherService teaService = new TeacherServiceImpl();
    private CourseService courseService = new CourseServiceImpl();

    @RequestMapping("/add")
    public String addTeacher(Teacher tea) {
        boolean result = teaService.addTeacher(tea);
        if (result) {
            return "redirect:/teacher/getTeacher";
        } else {
            return "MainPage";
        }

    @Override
    public void destroy() {

    }

}

@RequestMapping("/course")
@Controller
public class CourseController {

	private CourseService courseService = new CourseServiceImpl();

	/**
	 * 获取所有课程信息
	 *
	 * @param m
	 * @return
	 */
	@RequestMapping("/getCourse")
	public String getCourse(Model m) {
		List courses = courseService.getCourse();
		m.addAttribute("courses", courses);
		return "CourseInfoProtect";
	}

	@RequestMapping("/add")
	public String addCourse(Course course) {
		boolean result = courseService.addCourse(course);
		if (result) {
			return "redirect:/course/getCourse";

	}

	@RequestMapping("/getGrade")
	public String getGrade(Model m) {
		// 定义了一个集合类,保存所有的学生对象
		List gras = graService.getGrade();
		m.addAttribute("gras", gras);// 存在model 中
		List<Subject> subs = subService.getSubject();
		m.addAttribute("subs", subs);
		return "GradeInfoProtect";// 调用这个jsp 界面
	}

	@RequestMapping(value = "/findGrade", method = RequestMethod.POST)
	public String findGrade(Model m, Grade gra) {
		List gras = graService.findGrade(gra);
		m.addAttribute("gras", gras);
		List<Subject> subs = subService.getSubject();
		m.addAttribute("subs", subs);
		return "GradeInfoProtect";
	}

	@RequestMapping("/getGraById")
	public String getGraById(Model m, Grade gra) {
		Grade s = graService.getGraById(gra.getId());
		m.addAttribute("gra", s);
		return "GradeInfoUpdate";
	}

	@RequestMapping(value = "/updateGra", method = RequestMethod.POST)
	public String updateGra(Grade gra) {
		System.out.print("121w1edwefdwefw");
		System.out.print(gra.getGradeName());
		if (graService.updateGra(gra)) {
			return "redirect:/grade/getGrade";
		} else {
			return "MainPage";
		}
	}

	@RequestMapping(value = "/deleteGra", method = RequestMethod.GET)
	public String deleteGra(Grade gra) {
		if (graService.deleteGra(gra)) {
			return "redirect:/grade/getGrade";
		} else {
			return "MainPage";

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

java毕业

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值