项目编号:BS-GX-014

数据库:mysql

开发工具:IDEA / ECLIPSE

开发技术:SSM 框架

本系统基于SSM框架实现。主要包含三个角色,管理员,老师,学生。管理员主要管理学生,老师,课程。学生可以进行选课,选完课后可以对任课老师评价。老师可以查看自己的评价信息。

部分展示功能如下:

管理员角色:

学生角色:

老师角色:

本项目功能完整,运行无误,适合做毕业设计使用,如有需要,请联系作者。

部分核心代码:

package one.controller;import java.util.List;    import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;import one.domain.Admin;
import one.domain.Curriculum;
import one.domain.Evaluate;
import one.domain.PageBean;
import one.domain.Student;
import one.domain.Teacher;
import one.service.AdminService;
import one.service.CurriculumService;
import one.service.ManyTableService;
import one.service.StudentService;
import one.service.TeacherService;
import one.vo.Details;
import one.vo.ManyTable;
import one.vo.Tea_Curri;@Controller
public class AdminController {@Resource(name="manyTableServiceImpl")private ManyTableService mts;@Resource(name="studentServiceImpl")private StudentService stus;@Resource(name="teacherServiceImpl")private TeacherService teas;@Resource(name="adminServiceImpl")private AdminService adms;@Resource(name="curriculumServiceImpl")private CurriculumService curs;@RequestMapping("/seetea")public String seetea(Model model) throws Exception{List<Tea_Curri> listtea_curri = mts.gettea_curri();model.addAttribute("listtea_curri", listtea_curri);return "admin/seetea.jsp";  }@RequestMapping("/seedetails")public String seedetails(int cid,Model model) throws Exception{List<Details> listdetails = mts.getdetails(cid);int sum=0;int flag=0;for(Details det:listdetails){if(det.getEscore()==null){continue;}sum+=det.getEscore();flag++;}if(flag==0){return  "pjnotfinish.jsp";}double avg=sum/flag;int b=(int) (avg/10);String grade;switch(b){case 10:grade="非常优秀";break;case 9:grade="优秀";break;case 8:grade="良好";break;case 7:grade="中等";break;case 6:grade="及格";break;default:grade="不合格";}model.addAttribute("grade", grade);model.addAttribute("avg", avg);model.addAttribute("listdetails", listdetails);return "admin/details.jsp";}@RequestMapping("/viewstu")public String viewstu(Model model,int currPage) throws Exception{int pageSize=5;int count = stus.getcount();int totalPage=(int) Math.ceil((count*1.0/pageSize));if(currPage<=0){currPage=1;}if(currPage>=totalPage){currPage=totalPage;}PageBean<Student> pb = stus.getfenyestu(currPage, pageSize);
//      List<Student> listallstu = stus.getallstu();List<Student> liststu = pb.getList();model.addAttribute("pb", pb);model.addAttribute("liststu", liststu);return "admin/viewstu.jsp";}@RequestMapping("/viewtea")public String viewtea(Model model,int currPage) throws Exception{int pageSize=5;int count = teas.getcount();int totalPage=(int) Math.ceil((count*1.0/pageSize));if(currPage<=0){currPage=1;}if(currPage>=totalPage){currPage=totalPage;}PageBean<Teacher> pb = teas.getfenyetea(currPage, pageSize);
//      List<Teacher> listalltea = teas.getalltea();List<Teacher> listtea = pb.getList();model.addAttribute("pb", pb);model.addAttribute("listtea",listtea);return "admin/viewtea.jsp";}@RequestMapping("/addstu")public String viewtea(Student stu,Model model) throws Exception{Student getstu = stus.getstu(stu.getSid());if(getstu==null){stus.insertstu(stu);model.addAttribute("succ", "添加成功");}else{model.addAttribute("err", "已存在该编号的学生");}return "admin/addstu.jsp";}@RequestMapping("/addtea")public String viewtea(Teacher tea,Model model) throws Exception{Teacher gettea = teas.gettea(tea.getTid());if(gettea==null){teas.inserttea(tea);model.addAttribute("succ", "添加成功");}else{model.addAttribute("err", "已存在该编号的教师");}return "admin/addtea.jsp";}//点击查看课程@RequestMapping("viewcurri")public String viewcurri(Model model,int currPage) throws Exception{int pageSize=10;int count = curs.getcount();int totalPage=(int) Math.ceil((count*1.0/pageSize));if(currPage<=0){currPage=1;}if(currPage>=totalPage){currPage=totalPage;}PageBean<Curriculum> pb = curs.getfenyecur(currPage, pageSize);List<Curriculum> listcur = pb.getList();model.addAttribute("pb", pb);model.addAttribute("listcur",listcur);return "admin/viewcurri.jsp";}//修改密码,点击提交@RequestMapping("/admuppwd")public String uppwd(String oldpwd,String newpwd,HttpServletRequest request,Model model)throws Exception{HttpSession session = request.getSession();Admin adm=(Admin) session.getAttribute("adm");if(adm.getApassword().equals(oldpwd)){adm.setApassword(newpwd);adms.uppwd(adm);}else{model.addAttribute("pwderr","你的原始密码有误");return "admin/updatepwd.jsp";}return "admin/uppwdsuccess.jsp";}//点击添加课程功能@RequestMapping("addcurri")public String addcurri(Model model) throws Exception{List<Teacher> listalltea = teas.getalltea();model.addAttribute("listtea",listalltea);return "admin/addcurri.jsp";}//填写课程信息后,点击提交@RequestMapping("submitcurri")public String submitcurri(Curriculum cur,Model model) throws Exception{Curriculum curri = curs.getbyid(cur.getCid());if(curri==null){curs.addcur(cur);model.addAttribute("succ", "添加成功");}else{model.addAttribute("err", "该编号的课程已存在");}List<Teacher> listalltea = teas.getalltea();model.addAttribute("listtea",listalltea);return "admin/addcurri.jsp";}//点击学生选课@RequestMapping("stuselectcur")public String stuselectcur(Model model,int currPage)throws Exception{int pageSize=10;int count = stus.getcount();int totalPage=(int) Math.ceil((count*1.0/pageSize));if(currPage<=0){currPage=1;}if(currPage>=totalPage){currPage=totalPage;}PageBean<Student> pb = stus.getfenyestu(currPage, pageSize);
//          List<Student> listallstu = stus.getallstu();List<Student> liststu = pb.getList();model.addAttribute("pb", pb);model.addAttribute("liststu", liststu);return "admin/stuselectcur.jsp";}//点击教师任课@RequestMapping("teaselectcur")public String teaselectcur(Model model,int currPage)throws Exception{int pageSize=10;int count = teas.getcount();int totalPage=(int) Math.ceil((count*1.0/pageSize));if(currPage<=0){currPage=1;}if(currPage>=totalPage){currPage=totalPage;}PageBean<Teacher> pb = teas.getfenyetea(currPage, pageSize);List<Teacher> listalltea = pb.getList();model.addAttribute("pb", pb);model.addAttribute("listtea",listalltea);return "admin/teaselectcur.jsp";}//点击选课详情@RequestMapping("selectcurdetails")public String selectcurdetails(Model model,String ssid,String sname)throws Exception{List<ManyTable> liststu_curbystuid = mts.getstu_curbystuid(ssid);if(liststu_curbystuid.size()==0){model.addAttribute("sname", sname);return "admin/noselectcur.jsp";}model.addAttribute("liststu_curbystuid", liststu_curbystuid);model.addAttribute("sname", sname);return "admin/stucurdetails.jsp";}//点击教师任课详情@RequestMapping("teacurdetails")public String teacurdetails(Model model,String tid,String tname)throws Exception{List<Curriculum> listcurbytid = curs.getcurbytid(tid);if(listcurbytid.size()==0){model.addAttribute("tname", tname);return "admin/teanocur.jsp";}model.addAttribute("listcurbytid", listcurbytid);model.addAttribute("tname", tname);model.addAttribute("tid", tid);return "admin/teacurdetails.jsp";}//修改学生信息@RequestMapping("updatestu")public String updatestu(Student stu,Model model)throws Exception{stus.updatestu(stu);List<Student> listallstu = stus.getallstu();model.addAttribute("liststu", listallstu);return "/viewstu?currPage=1";}//修改教师信息@RequestMapping("updatetea")public String updatetea(Teacher tea,Model model)throws Exception{teas.updatetea(tea);List<Teacher> listalltea = teas.getalltea();model.addAttribute("listtea",listalltea);return "/viewtea?currPage=1";}//删除学生@RequestMapping("/delstu")public String  delstu(HttpServletRequest request)throws Exception{String sid = request.getParameter("sid");stus.delstu(sid);return "/viewstu?currPage=1";}//删除老师@RequestMapping("/deltea")public String deltea(String tid)throws Exception{teas.deltea(tid);return "/viewtea?currPage=1";}//删除课程@RequestMapping("/deletecurriculumbyid")public String deletecurriculumbyid(int cid)throws Exception{curs.deletecur(cid);return "/viewcurri?currPage=1";  }//点击修改课程@RequestMapping("/updatecurr")public String updatecurr(Model model)throws Exception{List<Teacher> listalltea = teas.getalltea();model.addAttribute("listtea",listalltea);return "admin/updatecurr.jsp";}//课程里点击确认修改@RequestMapping("/querenxiugai")public String querenxiugai(Model model,Curriculum curr){curs.querenxiugai(curr);return "viewcurri?currPage=1";}//按姓名查询学生@RequestMapping("/nameselect")public String nameselect(String name,Model model)throws Exception{List<Student> liststu = stus.findbyname(name);if(liststu.size()==0){return "admin/NewFile1.jsp";}model.addAttribute("liststu", liststu);return "admin/NewFile2.jsp";  }//按姓名查询老师@RequestMapping("/tnameselect")public String tnameselect(String name,Model model)throws Exception{List<Teacher> listtea = teas.findteabyname(name);if(listtea.size()==0){return "admin/NewFile3.jsp";}model.addAttribute("listtea", listtea);return "admin/NewFile4.jsp";   }
}
package one.controller;import java.util.Date;
import java.util.List;import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;import one.domain.Curriculum;
import one.domain.Evaluate;
import one.domain.Student;
import one.domain.Studentandcurriculum;
import one.service.CurriculumService;
import one.service.EvaluateService;
import one.service.ManyTableService;
import one.service.StudentService;
import one.vo.ManyTable;@Controller
public class StudentController {@Resource(name="studentServiceImpl")private StudentService stus;@Resource(name="curriculumServiceImpl")private CurriculumService curs;@Resource(name="evaluateServiceImpl")private EvaluateService evaService;//修改密码,点击提交@RequestMapping("/stuuppwd")public String uppwd(String oldpwd,String newpwd,HttpServletRequest request,Model model)throws Exception{HttpSession session = request.getSession();Student stu=(Student) session.getAttribute("stu");if(stu.getSpassword().equals(oldpwd)){stu.setSpassword(newpwd);stus.uppwd(stu);}else{model.addAttribute("pwderr","你的原始密码有误");return "student/updatepwd.jsp";}return "student/uppwdsuccess.jsp";}//学生点击进行评教@RequestMapping("/aa")public String allpj(HttpServletRequest request,Model model) throws Exception{HttpSession session = request.getSession();Student stu = (Student) session.getAttribute("stu");List<ManyTable> listpj =  mts.getall(stu.getSid());if(listpj.size()==0){return "student/nocurr.jsp";}else{model.addAttribute("listpj", listpj);return "student/allpingjiao.jsp";  }}@Resource(name="manyTableServiceImpl")private ManyTableService mts;@Resource(name="evaluateServiceImpl")private EvaluateService evas;//学生提交评教@RequestMapping("/subpj")public String subpj(HttpServletRequest request,int eid,String advise,Model model)throws Exception{int  a = Integer.parseInt(request.getParameter("1"));int  b = Integer.parseInt(request.getParameter("2"));int  c = Integer.parseInt(request.getParameter("3"));int  d = Integer.parseInt(request.getParameter("4"));int  e = Integer.parseInt(request.getParameter("5"));int  f = Integer.parseInt(request.getParameter("6"));int  g = Integer.parseInt(request.getParameter("7"));int  h = Integer.parseInt(request.getParameter("8"));int  i = Integer.parseInt(request.getParameter("9"));int  j = Integer.parseInt(request.getParameter("10"));int sum=a+b+c+d+e+f+g+h+i+j;if(advise==""){advise=null;}Date date=new Date();Evaluate eva=new Evaluate();eva.setEid(eid);eva.setEscore(sum);eva.setEcomment(advise);eva.setEdate(date);evas.uppj(eva);HttpSession session = request.getSession();Student stu = (Student) session.getAttribute("stu");List<ManyTable> listpj =  mts.getall(stu.getSid());model.addAttribute("listpj", listpj);return "student/allpingjiao.jsp";}//点击添加选课@RequestMapping("addmycur")public String addmycur(Model model)throws Exception{List<Curriculum> listallcur = curs.getallcur();model.addAttribute("listallcur", listallcur);return "student/addmycur.jsp";}@RequestMapping("stuaddcur")public String stuaddcur(HttpSession session,Model model,int scid ) throws Exception{Student stu = (Student) session.getAttribute("stu");Studentandcurriculum stucur=new Studentandcurriculum();stucur.setScid(scid);System.out.println(stu.getSid());stucur.setSsid(stu.getSid());Studentandcurriculum myselect = stus.findmyselect(stucur);if(myselect==null){stus.stuaddcur(stucur);Evaluate eva=new Evaluate();eva.setEsid(stucur.getSsid());eva.setEcid(stucur.getScid());evaService.addstuselect(eva);model.addAttribute("succ", "添加选课成功!");}else{model.addAttribute("err", "你已经选了该课程!");}List<Curriculum> listallcur = curs.getallcur();model.addAttribute("listallcur", listallcur);return "student/addmycur.jsp";}}

基于SSM实现的评教系统相关推荐

  1. [附源码]计算机毕业设计Python+uniapp基于Android的学生评教系统rfl6a(程序+源码+LW+远程部署)

    [附源码]计算机毕业设计Python+uniapp基于Android的学生评教系统rfl6a(程序+源码+LW+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境 ...

  2. java平台设计zhe_基于java平台的网上评教系统的设计与实现

    基于java平台的网上评教系统的设计与实现 作者: 郭文占 摘要: 教师评价是高校教育管理的重要方面,也是促进教育发展和教师发展的重要手段.网上评教极大地减少了教务管理人员的工作量,正在被越来越多的高 ...

  3. 基于SSM+SpringBoot+MySQL+LayUI的高校学生评教系统

    大家好,很高兴和大家分享源码.不管是什么样的需求.都希望各位计算机专业的同学们有一个提高. 大家可以通过常用的搜索引擎,以百度为例,搜索 源码乐园 code51 ,然后再次搜索 自己想要的即可.更多的 ...

  4. 基于SSM框架的高校评教系统(附论文)

    大家好,很高兴和大家分享源码.不管是什么样的需求.都希望各位计算机专业的同学们有一个提高.关于源码如何获取的方式, 大家可以通过常用的搜索引擎,以百度为例,搜索 源码乐园 code51 ,然后再次搜索 ...

  5. 基于Java毕业设计学生在线评教系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计学生在线评教系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计学生在线评教系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S架构 开 ...

  6. 可自定义评教系统(教学质量评估系统)设计与实现(SSM)毕业论文+设计源码+mysql文件

    目 录 摘要 I Abstract II 第1章 绪论 1 1.1 课题背景 1 1.2 研究意义 1 1.3 国内外研究现状分析 2 1.3.1 评教指标的过于简单化 2 1.3.2 评教指标的权重 ...

  7. 基于SSM的健身房私教排课系统(含论文)

    基于SSM的健身房私教排课系统(含论文) 健身房私教排课系统能很好的为用户提供快捷的信息登记.查询.管理功能,通过网络能及时获得各项信息资料,不但减少了人力,节省物力,而且提高了管理员的工作效率.本项 ...

  8. java毕业生设计学生在线评教系统计算机源码+系统+mysql+调试部署+lw

    java毕业生设计学生在线评教系统计算机源码+系统+mysql+调试部署+lw java毕业生设计学生在线评教系统计算机源码+系统+mysql+调试部署+lw 本源码技术栈: 项目架构:B/S架构 开 ...

  9. 基于SSM的高校课程评价系统

    末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA ...

最新文章

  1. 单链表-单链表拆分为A和B链表(尾插法+头插法)
  2. bzoj 2109 amp; 2535 空中管制 解读
  3. zabbix配fpmmm(mpm)数据传送不了问题解决
  4. mongodb添加创建修改时间_MongoDB数据库插入、更新和删除操作详解
  5. 提升大数据可视化的技巧有哪些
  6. html加图形验证码,canvas基础之图形验证码的示例
  7. 51单片机mysql_[学习笔记]15个QA让你快速入门51单片机开发
  8. ie浏览器框架不显示_Python 爬虫(四):Selenium 框架介绍与使用
  9. 软件测试知识点 fiddler抓包教程
  10. 【LEDE】树莓派上玩LEDE终极指南-92-自己编译的LEDE为啥子不能用SSR和KoolProxy?
  11. dct椒盐噪声去噪效果不好_椒盐噪声去除方法分析及对比研究
  12. Wireshark抓包体验
  13. 2008世界GDP排名
  14. Win10触摸板右键无法使用,解决办法
  15. 用echarts做如图,x轴左右都是正数的倒立柱形图展示
  16. 你还敢做Xooxle的adsense吗?
  17. Layui官网地址官网仓库
  18. 问题解决:inittramfs unpacking failed:Decoding failed
  19. 数字集成电路设计-1-用一个mux和一个inv实现异或
  20. Google 推出浏览器版Google Voice

热门文章

  1. 南开大学软件学院2021年秋季学期研究生算法课程(复习)动态规划
  2. 查看linux系统启动日志记录
  3. 传统数据仓库 DW/EDW/BI/ODS/DM/ETL
  4. PHP删除一个路径下的所有文件夹和文件的方法
  5. python除法运算总结
  6. 短信发送验证码,每天只限三次
  7. c语言 n阶阶乘尾0个数,计算n的阶乘(n!)末尾0的个数
  8. Java反射生成对象注入spring(结合工厂模式)
  9. mysql千万数据查重_mysql查重 去除重复数据
  10. 宝塔面板部署vue项目到云服务器上(Nginx服务器)