基于javaweb+mysql的jsp+servlet教务处学生成绩管理系统(java+jsp+bootstrap+servlet+mysql)
私信源码获取及调试交流
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的JSP+Servlet教务处学生成绩管理系统(java+jsp+bootstrap+servlet+mysql)
项目介绍
本项目包含管理员、教师、学生三种角色;
用户角色包含以下功能:
修改密码,查看自己的信息,查看自己的成绩,登录界面等功能。
管理员角色包含以下功能: 修改示例,增删改查学生信息,增删改查教师信息,增删改查课程信息,管理员修改密码等功能。
老师角色包含以下功能: 个人信息查看,修改成绩信息,增加成绩信息,管理学生成绩信息等功能。
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.数据库:MySql 5.7版本; 6.是否Maven项目:否;
技术栈
JSP+CSS+JavaScript+jquery+bootstrap+servlet+mysql
使用说明
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中dbconfig.properties配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入http://localhost:8080/ 登录 管理员账号/密码:admin/admin 教师账号/密码: 20194101/123456 学生账号/密码: 202041404237/123456
major, department, sclass);
if (flag) {
request.setAttribute("message",
} else {
request.setAttribute("message",
}
String pageNum = request.getParameter("pageNum");
Page page = service.findStudentsRecords(pageNum);
page.setUrl("/LoginServlet");
request.setAttribute("page", page);
request.getRequestDispatcher("/WEB-INF/admin_main.jsp")
.forward(request, response);
}
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
public class AddCourseServlet extends HttpServlet {
private BusinessService service = new BusinessServiceImpl();
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/jsp;charset=utf-8");
response.setCharacterEncoding("utf-8");
Admin admin = (Admin) request.getSession().getAttribute("admin");
}
public class AddScoreServlet extends HttpServlet {
private BusinessService service = new BusinessServiceImpl();
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/jsp;charset=utf-8");
response.setCharacterEncoding("utf-8");
Teacher teacher = (Teacher) request.getSession()
.getAttribute("teacher");
if (teacher == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
} else {
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
// 更新令牌
session.setAttribute("CONTROL_REFRESH", tokenStr);
if (tname != null && tno != null && cno != null && cname != null
&& credit != null) {
Course course = new Course(cno, cname, tno, tname, credit);
boolean flag = service.updateCourse(course);
if (flag) {
request.setAttribute("message",
} else {
request.setAttribute("message",
}
String pageNum = request.getParameter("pageNum");
Page page = service.findCoursesRecords(pageNum);
page.setUrl("/AdminToCourseServlet");
request.setAttribute("page", page);
request.getRequestDispatcher("/WEB-INF/admin_course.jsp")
.forward(request, response);
}
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
public class AddStuServlet extends HttpServlet {
private BusinessService service = new BusinessServiceImpl();
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/jsp;charset=utf-8");
response.setCharacterEncoding("utf-8");
Admin admin = (Admin) request.getSession().getAttribute("admin");
if (admin == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
} else {
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
// 更新令牌
session.setAttribute("CONTROL_REFRESH", tokenStr);
String sno = request.getParameter("sno");
String sname = request.getParameter("sname");
String sex = request.getParameter("sex");
String password = request.getParameter("password");
String major = request.getParameter("major");
String department = request.getParameter("department");
String sclass = request.getParameter("sclass");
Student student = new Student(sno, sname, password, sex, major,
department, sclass);
boolean flag = false;
if (sname != null && sno != null && sex != null && password != null
&& department != null && major != null && sclass != null) {
flag = service.addStudent(student);
if (flag) {
request.setAttribute("message",
} else {
public class UpdateScoreServlet extends HttpServlet {
private BusinessService service = new BusinessServiceImpl();
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/jsp;charset=utf-8");
response.setCharacterEncoding("utf-8");
Teacher teacher = (Teacher) request.getSession()
.getAttribute("teacher");
if (teacher == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
} else {
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
// 更新令牌
session.setAttribute("CONTROL_REFRESH", tokenStr);
String sno = request.getParameter("sno");
String cno = request.getParameter("cno");
request.getRequestDispatcher("/WEB-INF/admin_main.jsp")
.forward(request, response);
} else if ("教师".equals(type)) {
String username = request.getParameter("username");
String password = request.getParameter("password");
teacher = service.queryTeacher(username);
if (teacher == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
}
teacher = service.queryTeacher(username,password);
if (teacher == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
}
request.getSession().setAttribute("teacher", teacher);
// 此段代码用于防止刷新后的重复提交
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
// 更新令牌
session.setAttribute("CONTROL_REFRESH", tokenStr);
// 设置页码
String pageNum = request.getParameter("pageNum");
Page page = service.findScoresRecordsByTno(teacher.getTno(), pageNum);
page.setUrl("/LoginServlet");
request.setAttribute("page", page);
request.getRequestDispatcher("/WEB-INF/teacher_main.jsp")
.forward(request, response);
} else if ("学生".equals(type)) {
String username = request.getParameter("username");
String password = request.getParameter("password");
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
} else {
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
// 更新令牌
session.setAttribute("CONTROL_REFRESH", tokenStr);
String sno = request.getParameter("sno");
String cno = request.getParameter("cno");
String grade = request.getParameter("grade");
String get_credit = request.getParameter("get_credit");
String GPA = request.getParameter("GPA");
String credit_GPA = request.getParameter("credit_GPA");
if (sno != null && grade != null && cno != null
&& get_credit != null && GPA != null && credit_GPA != null) {
boolean flag = service.updateScore(sno, cno, grade, get_credit,
GPA, credit_GPA);
if (flag) {
request.setAttribute("message",
} else {
request.setAttribute("message",
}
String pageNum = request.getParameter("pageNum");
Page page = service.findScoresRecordsByTno(teacher.getTno(),
pageNum);
page.setUrl("/LoginServlet");
request.setAttribute("page", page);
request.getRequestDispatcher("/WEB-INF/teacher_main.jsp")
.forward(request, response);
}
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
public class DeleteStuServlet extends HttpServlet {
private BusinessService service = new BusinessServiceImpl();
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/jsp;charset=utf-8");
response.setCharacterEncoding("utf-8");
Admin admin = (Admin) request.getSession().getAttribute("admin");
if (admin == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
} else {
// 此段代码用于防止刷新后的重复提交
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
public class AddTeaServlet extends HttpServlet {
private BusinessService service = new BusinessServiceImpl();
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/jsp;charset=utf-8");
response.setCharacterEncoding("utf-8");
Admin admin = (Admin) request.getSession().getAttribute("admin");
if (admin == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
} else {
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
// 更新令牌
session.setAttribute("CONTROL_REFRESH", tokenStr);
String tno = request.getParameter("tno");
String tname = request.getParameter("tname");
String sex = request.getParameter("sex");
String password = request.getParameter("password");
String degree = request.getParameter("degree");
String department = request.getParameter("department");
String title = request.getParameter("title");
Teacher teacher = new Teacher(tno, tname, password, sex, department, degree, title);
boolean flag = false;
if (tname != null && tno != null && sex != null && password != null
&& department != null && degree != null && title != null) {
public class UpdateStuServlet extends HttpServlet {
private BusinessService service = new BusinessServiceImpl();
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/jsp;charset=utf-8");
response.setCharacterEncoding("utf-8");
Admin admin = (Admin) request.getSession().getAttribute("admin");
if (admin == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
} else {
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
// 更新令牌
session.setAttribute("CONTROL_REFRESH", tokenStr);
String sname = request.getParameter("sname");
String sno = request.getParameter("sno");
String sex = request.getParameter("sex");
String password = request.getParameter("password");
String department = request.getParameter("department");
String major = request.getParameter("major");
String sclass = request.getParameter("sclass");
if (sname != null && sno != null && sex != null && password != null
&& department != null && major != null && sclass != null) {
boolean flag = service.updateStudent(sno, password, sname, sex,
major, department, sclass);
if (flag) {
request.setAttribute("message",
} else {
request.setAttribute("message",
}
String sesValue = (String) session.getAttribute("CONTROL_REFRESH");
System.out.println(sesValue);
String reqValue = request.getParameter("tokenStr");
System.out.println(reqValue);
if (!sesValue.equals(reqValue)) {
// 设置页码
String pageNum = request.getParameter("pageNum");
Page page = service.findTeachersRecords(pageNum);
request.setAttribute("page", page);
request.getRequestDispatcher("/WEB-INF/admin_teacher.jsp")
.forward(request, response);
return;
}
// 更新令牌
String tno = request.getParameter("tno");
session.setAttribute("CONTROL_REFRESH", tokenStr);
boolean flag = service.deleteTeacher(tno);
if (flag) {
request.setAttribute("message",
} else {
request.setAttribute("message",
}
// 设置页码
String pageNum = request.getParameter("pageNum");
Page page = service.findTeachersRecords(pageNum);
request.setAttribute("page", page);
page.setUrl("/AdminToTeaServlet");
request.getRequestDispatcher("/WEB-INF/admin_teacher.jsp").forward(request,
response);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
Admin admin = (Admin) request.getSession().getAttribute("admin");
if (admin == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
} else {
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
// 更新令牌
session.setAttribute("CONTROL_REFRESH", tokenStr);
String tname = request.getParameter("tname");
String tno = request.getParameter("tno");
String cno = request.getParameter("cno");
String cname = request.getParameter("cname");
String credit = request.getParameter("credit");
if (tname != null && tno != null && cno != null && cname != null
&& credit != null) {
Course course = new Course(cno, cname, tno, tname, credit);
boolean flag = service.updateCourse(course);
if (flag) {
request.setAttribute("message",
} else {
request.setAttribute("message",
}
String pageNum = request.getParameter("pageNum");
Page page = service.findCoursesRecords(pageNum);
page.setUrl("/AdminToCourseServlet");
request.setAttribute("page", page);
request.getRequestDispatcher("/WEB-INF/admin_course.jsp")
.forward(request, response);
}
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
} else {
// 此段代码用于防止刷新后的重复提交
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
String sesValue = (String) session.getAttribute("CONTROL_REFRESH");
System.out.println(sesValue);
String reqValue = request.getParameter("tokenStr");
System.out.println(reqValue);
if (!sesValue.equals(reqValue)) {
// 设置页码
String pageNum = request.getParameter("pageNum");
Page page = service.findCoursesRecords(pageNum);
request.setAttribute("page", page);
request.getRequestDispatcher("/WEB-INF/admin_course.jsp")
.forward(request, response);
return;
}
// 更新令牌
String cno = request.getParameter("cno");
session.setAttribute("CONTROL_REFRESH", tokenStr);
boolean flag = service.deleteCourse(cno);
if (flag) {
request.setAttribute("message",
} else {
request.setAttribute("message",
}
// 设置页码
String pageNum = request.getParameter("pageNum");
Page page = service.findCoursesRecords(pageNum);
request.setAttribute("page", page);
page.setUrl("/AdminToCourseServlet");
request.getRequestDispatcher("/WEB-INF/admin_course.jsp").forward(request,
response);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
public class AddTeaServlet extends HttpServlet {
private BusinessService service = new BusinessServiceImpl();
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/jsp;charset=utf-8");
response.setCharacterEncoding("utf-8");
Admin admin = (Admin) request.getSession().getAttribute("admin");
if (admin == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
} else {
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
// 更新令牌
session.setAttribute("CONTROL_REFRESH", tokenStr);
} else {
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
// 更新令牌
session.setAttribute("CONTROL_REFRESH", tokenStr);
String tno = request.getParameter("tno");
String tname = request.getParameter("tname");
String sex = request.getParameter("sex");
String password = request.getParameter("password");
String degree = request.getParameter("degree");
String department = request.getParameter("department");
String title = request.getParameter("title");
Teacher teacher = new Teacher(tno, tname, password, sex, department, degree, title);
boolean flag = false;
if (tname != null && tno != null && sex != null && password != null
&& department != null && degree != null && title != null) {
flag = service.addTeacher(teacher);
if (flag) {
request.setAttribute("message",
}else{
request.setAttribute("message",
}
String pageNum = request.getParameter("pageNum");
Page page = service.findTeachersRecords(pageNum);
page.setUrl("/AdminToTeaServlet");
request.setAttribute("page", page);
request.getRequestDispatcher("/WEB-INF/admin_teacher.jsp")
.forward(request, response);
}
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
}
admin = service.queryAdmin(username, password);
if (admin == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
}
request.getSession().setAttribute("admin", admin);
// 此段代码用于防止刷新后的重复提交
// 时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
// 更新令牌
session.setAttribute("CONTROL_REFRESH", tokenStr);
// 设置页码
String pageNum = request.getParameter("pageNum");
Page page = service.findStudentsRecords(pageNum);
page.setUrl("/LoginServlet");
request.setAttribute("page", page);
request.getRequestDispatcher("/WEB-INF/admin_main.jsp")
.forward(request, response);
} else if ("教师".equals(type)) {
String username = request.getParameter("username");
String password = request.getParameter("password");
teacher = service.queryTeacher(username);
if (teacher == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
}
teacher = service.queryTeacher(username,password);
if (teacher == null) {
request.setAttribute("message",
request.getRequestDispatcher("/index.jsp").forward(request,
response);
return;
}
String timeStamp = String.valueOf(new java.util.Date().getTime());
HttpSession session = request.getSession();
// 创建新令牌值
String tokenStr = session.getId() + timeStamp;
// 识别令牌,不合法将中止页面运行
// 更新令牌
session.setAttribute("CONTROL_REFRESH", tokenStr);
String sno = request.getParameter("sno");
String cno = request.getParameter("cno");
String grade = request.getParameter("grade");
String get_credit = request.getParameter("get_credit");
String GPA = request.getParameter("GPA");
String credit_GPA = request.getParameter("credit_GPA");
if (sno != null && grade != null && cno != null
&& get_credit != null && GPA != null && credit_GPA != null) {
boolean flag = service.updateScore(sno, cno, grade, get_credit,
GPA, credit_GPA);
if (flag) {
request.setAttribute("message",
} else {
request.setAttribute("message",
}
String pageNum = request.getParameter("pageNum");
Page page = service.findScoresRecordsByTno(teacher.getTno(),
pageNum);
page.setUrl("/LoginServlet");
request.setAttribute("page", page);
request.getRequestDispatcher("/WEB-INF/teacher_main.jsp")
.forward(request, response);
}
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}