基于javaweb+mysql的jsp+servlet学生成绩管理系统(管理员、教师、学生)(java+jsp+servlet+javabean+mysql+tomcat)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
管理员:个人信息、课程管理、成绩管理、教师管理、学生管理
教师:个人信息、课程管理、成绩管理、学生信息查看
学生:人个信息管理、成绩查询
管理员
教师
学生
技术框架
JSP Servlet MySQL JDBC Tomcat CSS JavaScript bootstrap jquery
基于javaweb+mysql的JSP+Servlet学生成绩管理系统(管理员、教师、学生)(java+jsp+servlet+javabean+mysql+tomcat)
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
/*request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");*/
//得到要下载的文件名
String fileName=request.getParameter("fileName");
fileName=new String(fileName.getBytes("iso8859-1"),"utf-8");
//上传的文件都保存在/WEB—INF/upload目录下的子目录当中
String fileSaveRootPath=this.getServletContext().getRealPath("/WEB-INF/upload");
//通过文件名找出文件所在目录
String path=findFileSavePathByFileName(fileName, fileSaveRootPath);
//得到要下载的文件
File file=new File(path+"\\"+fileName);
//如果文件不存在
if(!file.exists()){
request.setAttribute("message", "文件不存在!!!");
request.getRequestDispatcher("admin/fileLoadFail.jsp").forward(request, response);
return ;
}
/*
String realname = fileName.substring(fileName.indexOf("_")+1);
//设置响应头,控制浏览器下载该文件
response.setHeader("content-disposition", "attachment;filename=" + URLEncoder.encode(realname, "UTF-8"));
*/
//处理文件名
String realName=fileName.substring(fileName.indexOf("_")+1);
if ("FF".equals(getBrowser(request))) {
// 针对火狐浏览器处理方式不一样了
realName = new String(realName.getBytes("UTF-8"),
"iso-8859-1") ;
}
else{
realName=URLEncoder.encode(realName, "utf-8");
}
//设置响应头,控制浏览器下载该文件
response.setHeader("content-disposition", "attachment;fileName="+realName);
//读取要下载的文件,保存到文件输入流
FileInputStream fis=new FileInputStream(path+"\\"+fileName);
//创建输出流
OutputStream os=response.getOutputStream();
//创建缓冲区
byte buffer[]=new byte[1024];
int len=0;
//循环将输入流中的内容读取到缓冲区当中
while((len=fis.read(buffer))>0){
os.write(buffer, 0, len);
}
String stuNum=request.getParameter("stuNum");
String stuName = request.getParameter("stuName");
String stuSex = request.getParameter("stuSex");
int stuAge = Integer.parseInt(request.getParameter("stuAge"));
String stuClass = request.getParameter("stuClass");
String major = request.getParameter("major");
String department = request.getParameter("department");
student = new Student(stuNum, stuName, stuSex, stuAge, stuClass, major,
department);
int rs=studentServiceImpl.editStu(student);
if(rs>0){
request.setAttribute("msg", "修改成功!!");
findStu.doGet(request, response);
}else{
request.setAttribute("msg", "修改失败!!");
request.getRequestDispatcher("admin/editStudent.jsp").forward(request, response);
}
}
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
doGet(request,response);
}
}
public class ServletEditTea extends HttpServlet{
private Teacher teacher;
private TeacherServiceImpl teacherServiceImpl=new TeacherServiceImpl();
private ServletFindAllTea findTea=new ServletFindAllTea();
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
String teaNum=request.getParameter("teaNum");
String teaName = request.getParameter("teaName");
String teaSex = request.getParameter("teaSex");
int teaAge = Integer.parseInt(request.getParameter("teaAge"));
String teaCourse = request.getParameter("teaCourse");
String major = request.getParameter("major");
request.getSession().setAttribute("usernum", rs.getUserNum());
request.getRequestDispatcher("teacher/teacher.jsp").forward(request, response);
}else if(rs.getRoleID()==0){
request.getSession().setAttribute("username", rs.getUserName());
request.getSession().setAttribute("usernum", rs.getUserNum());
request.getRequestDispatcher("student/student.jsp").forward(request, response);
}
}else{
request.setAttribute("massage","角色不正确!!");
request.getRequestDispatcher("login/login.jsp").forward(request, response);
}
}else{
request.setAttribute("massage","密码不正确!!");
request.getRequestDispatcher("login/login.jsp").forward(request, response);
}
}else{
request.setAttribute("massage","用户不存在!!");
request.getRequestDispatcher("login/login.jsp").forward(request, response);
}
}else{
request.setAttribute("massage","用户不存在!!");
request.getRequestDispatcher("login/login.jsp").forward(request, response);
}
}
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
doGet(request,response);
}
}
private User user;
private Student student;
private UserServiceImpl userServiceImpl = new UserServiceImpl();
private StudentServiceImpl studentServiceImpl =new StudentServiceImpl();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String stuNum = request.getParameter("stuNum");
String stuName = request.getParameter("stuName");
String pwd = request.getParameter("password");
String stuSex = request.getParameter("stuSex");
int stuAge = Integer.parseInt(request.getParameter("stuAge"));
String stuClass = request.getParameter("stuClass");
String major = request.getParameter("major");
String department = request.getParameter("department");
String phone = request.getParameter("phone");
int roleID = Integer.parseInt(request.getParameter("role"));
user = new User(stuNum, stuName, pwd, phone, roleID);
student = new Student(stuNum, stuName, stuSex, stuAge, stuClass, major,
department);
int rsUser=userServiceImpl.addUser(user);
int rsStu=studentServiceImpl.addStu(student);
if(rsStu>0 && rsUser>0){
request.setAttribute("massage", "注册成功!!");
request.getRequestDispatcher("login/login.jsp").forward(request, response);
}else{
request.setAttribute("msg", "注册失败!!");
request.getRequestDispatcher("register/register.jsp").forward(request, response);
}
}
}
int rs=scoreServiceImpl.editCos(score);
if(rs>0){
request.setAttribute("msg", "修改成功!!");
servletFindAllScore.doGet(request, response);
// request.getRequestDispatcher("admin/addCourse.jsp").forward(request, response);
}else{
request.setAttribute("msg", "修改失败!!");
request.getRequestDispatcher("admin/editScore.jsp").forward(request, response);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
public class ServletEditStudentInfo extends HttpServlet{
private Student student;
private StudentServiceImpl studentServiceImpl=new StudentServiceImpl();
private ServletSelectStudentInfo findStu=new ServletSelectStudentInfo();
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
String stuNum=request.getParameter("stuNum");
String stuName = request.getParameter("stuName");
String stuSex = request.getParameter("stuSex");
int stuAge = Integer.parseInt(request.getParameter("stuAge"));
String stuClass = request.getParameter("stuClass");
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
doGet(request,response);
}
}
public class ServletaddStudent extends HttpServlet {
private User user;
private Student student;
private UserServiceImpl userServiceImpl = new UserServiceImpl();
private StudentServiceImpl studentServiceImpl =new StudentServiceImpl();
private ServletFindAllStu findStu=new ServletFindAllStu();
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String stuNum = request.getParameter("stuNum");
String stuName = request.getParameter("stuName");
String pwd = request.getParameter("password");
String stuSex = request.getParameter("stuSex");
int stuAge = Integer.parseInt(request.getParameter("stuAge"));
String stuClass = request.getParameter("stuClass");
String major = request.getParameter("major");
String department = request.getParameter("department");
String phone = request.getParameter("phone");
int roleID = Integer.parseInt(request.getParameter("role"));
user = new User(stuNum, stuName, pwd, phone, roleID);
student = new Student(stuNum, stuName, stuSex, stuAge, stuClass, major,
department);
//验证是否存在该学生
User rs=userServiceImpl.login(user);
if(rs.getUserID()==0){
int rsUser=userServiceImpl.addUser(user);
int rsStu=studentServiceImpl.addStu(student);
public class ServletRegistersStudent extends HttpServlet{
private User user;
private Student student;
private UserServiceImpl userServiceImpl = new UserServiceImpl();
private StudentServiceImpl studentServiceImpl =new StudentServiceImpl();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String stuNum = request.getParameter("stuNum");
String stuName = request.getParameter("stuName");
String pwd = request.getParameter("password");
String stuSex = request.getParameter("stuSex");
int stuAge = Integer.parseInt(request.getParameter("stuAge"));
String stuClass = request.getParameter("stuClass");
String major = request.getParameter("major");
String department = request.getParameter("department");
String phone = request.getParameter("phone");
int roleID = Integer.parseInt(request.getParameter("role"));
user = new User(stuNum, stuName, pwd, phone, roleID);
student = new Student(stuNum, stuName, stuSex, stuAge, stuClass, major,
department);
int rsUser=userServiceImpl.addUser(user);
int rsStu=studentServiceImpl.addStu(student);
if(rsStu>0 && rsUser>0){
request.setAttribute("massage", "注册成功!!");
request.getRequestDispatcher("login/login.jsp").forward(request, response);
}else{
request.setAttribute("msg", "注册失败!!");
request.getRequestDispatcher("register/register.jsp").forward(request, response);
}
}
}
public class ServletRegistersStudent extends HttpServlet{
private User user;
private Student student;
private UserServiceImpl userServiceImpl = new UserServiceImpl();
private StudentServiceImpl studentServiceImpl =new StudentServiceImpl();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String stuNum = request.getParameter("stuNum");
String stuName = request.getParameter("stuName");
String pwd = request.getParameter("password");
String stuSex = request.getParameter("stuSex");
int stuAge = Integer.parseInt(request.getParameter("stuAge"));
String stuClass = request.getParameter("stuClass");
String major = request.getParameter("major");
String department = request.getParameter("department");
String phone = request.getParameter("phone");
int roleID = Integer.parseInt(request.getParameter("role"));
user = new User(stuNum, stuName, pwd, phone, roleID);
student = new Student(stuNum, stuName, stuSex, stuAge, stuClass, major,
department);
int rsUser=userServiceImpl.addUser(user);
int rsStu=studentServiceImpl.addStu(student);
// request.getRequestDispatcher("admin/addCourse.jsp").forward(request, response);
}else{
request.setAttribute("msg", "修改失败!!");
selectOne.doGet(request, response);
//request.getRequestDispatcher("admin/editCourse.jsp").forward(request, response);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
public class ServletRegistersStudent extends HttpServlet{
private User user;
private Student student;
private UserServiceImpl userServiceImpl = new UserServiceImpl();
private StudentServiceImpl studentServiceImpl =new StudentServiceImpl();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String stuNum = request.getParameter("stuNum");
String stuName = request.getParameter("stuName");
String pwd = request.getParameter("password");
String stuSex = request.getParameter("stuSex");
String teaName=(String) request.getSession().getAttribute("username");
String pageNoStr=request.getParameter("pageNo");
String pageCountStr=request.getParameter("pageCount");
if(pageNoStr!=null){
pageNo=Integer.parseInt(pageNoStr);
}
if(pageCountStr!=null){
pageCount=Integer.parseInt(pageCountStr);
}
String stuNum=request.getParameter("stuNum");
String stuName=request.getParameter("stuName");
String stuClass=request.getParameter("stuClass");
score=new Score();
score.setStuNum(stuNum);
score.setStuName(stuName);
score.setStuClass(stuClass);
PageBean list=scoreServiceImpl.selectTeaScore(pageNo, pageCount, teaName,score);
request.setAttribute("list", list);
request.setAttribute("score", score);
request.getRequestDispatcher("teacher/stuTeaScore.jsp").forward(request, response);
}
}
public class ServletEditStu extends HttpServlet{
private Student student;
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
String userNum=request.getParameter("userNum");
String userName=request.getParameter("userName");
String pwd=request.getParameter("password");
String phone=request.getParameter("phone");
int roleID=Integer.parseInt(request.getParameter("roleID"));
user=new User(userNum,userName,pwd,phone,roleID);
int rs=userServiceImpl.editUser(user);
if(rs>0){
request.setAttribute("msg", "修改成功!!");
//servletFindAllUser.doGet(request, response);
}else{
request.setAttribute("msg", "修改失败!!");
//servletFindAllUser.doGet(request, response);
// request.getRequestDispatcher("admin/selectPwd.jsp").forward(request, response);
}
new PageServlet().doGet(request,response);
/*int userID=Integer.parseInt(request.getParameter("userID"));
List rs=userDaoImpl.selectOneUser(userID);
request.setAttribute("list", rs);
request.getRequestDispatcher("admin/editUser.jsp").forward(request, response);*/
}
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
doGet(request,response);
}
}
public class ServletEditScore extends HttpServlet{
String pageNoStr=request.getParameter("pageNo");
String pageCountStr=request.getParameter("pageCount");
if(pageNoStr!=null){
pageNo=Integer.parseInt(pageNoStr);
}
if(pageCountStr!=null){
pageCount=Integer.parseInt(pageCountStr);
}
String stuNum=request.getParameter("stuNum");
String stuName=request.getParameter("stuName");
String stuClass=request.getParameter("stuClass");
score=new Score();
score.setStuNum(stuNum);
score.setStuName(stuName);
score.setStuClass(stuClass);
PageBean list=scoreServiceImpl.selectTeaScore(pageNo, pageCount, teaName,score);
request.setAttribute("list", list);
request.setAttribute("score", score);
request.getRequestDispatcher("teacher/stuTeaScore.jsp").forward(request, response);
}
}
public class ServletEditStu extends HttpServlet{
private Student student;
private Student student;
private StudentServiceImpl studentServiceImpl=new StudentServiceImpl();
private ServletSelectStudentInfo findStu=new ServletSelectStudentInfo();
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
String stuNum=request.getParameter("stuNum");
String stuName = request.getParameter("stuName");
String stuSex = request.getParameter("stuSex");
int stuAge = Integer.parseInt(request.getParameter("stuAge"));
String stuClass = request.getParameter("stuClass");
String major = request.getParameter("major");
String department = request.getParameter("department");
student = new Student(stuNum, stuName, stuSex, stuAge, stuClass, major,
department);
int rs=studentServiceImpl.editStu(student);
if(rs>0){
request.setAttribute("msg", "修改成功!!");
findStu.doGet(request, response);
}else{
request.setAttribute("msg", "修改失败!!");
request.getRequestDispatcher("student/editStudentInfo.jsp").forward(request, response);
}
}
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
doGet(request,response);
}
}
public class ServletEditTeacherInfo extends HttpServlet{
private Teacher teacher;
private TeacherServiceImpl teacherServiceImpl=new TeacherServiceImpl();
@SuppressWarnings("serial")
public class ServletUploadFile extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
// 得到上传文件的保存目录,将上传的文件存放于服务器WEB-INF目录下,不允许外界直接访问,保证上传文件的安全性
String savePath = this.getServletContext().getRealPath(
"/WEB-INF/upload");
// 上传时生成临时文件保存目录
String tempPath = this.getServletContext().getRealPath("/WEB-INF/temp");
File tempFile = new File(tempPath);
if (!tempFile.exists()) {
// 创建临时文件目录
tempFile.mkdir();
}
// 消息提醒
String message = "";
try {
// 使用Apache文件上传组件处理文件上传步骤
// 1、创建一个DiskFileItemFactory工厂
DiskFileItemFactory factory = new DiskFileItemFactory();
// 设置工厂的缓冲区的大小,当上传的文件大小超过缓冲区的大小时,就会生成一个临时文件存放到指定的临时目录当中。
factory.setSizeThreshold(1024 * 100); // 设置缓冲区的大小为100KB,如果不指定,那么缓冲区的大小默认是10KB
// 设置上传时的临时保存目录
factory.setRepository(tempFile);
// 2,创建一个文件上传解析器
ServletFileUpload upLoad = new ServletFileUpload(factory);
request.getRequestDispatcher("admin/editStudent.jsp").forward(request, response);
}
}
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
doGet(request,response);
}
}
public class ServletEditTea extends HttpServlet{
private Teacher teacher;
private TeacherServiceImpl teacherServiceImpl=new TeacherServiceImpl();
private ServletFindAllTea findTea=new ServletFindAllTea();
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
String teaNum=request.getParameter("teaNum");
String teaName = request.getParameter("teaName");
String teaSex = request.getParameter("teaSex");
int teaAge = Integer.parseInt(request.getParameter("teaAge"));
String teaCourse = request.getParameter("teaCourse");
String major = request.getParameter("major");
String department = request.getParameter("department");
teacher = new Teacher(teaNum, teaName, teaSex, teaAge, teaCourse, major,
department);
int rs=teacherServiceImpl.editTea(teacher);
if(rs>0){
request.setAttribute("msg", "修改成功!!");
findTea.doGet(request, response);
}else{
request.setAttribute("msg", "修改失败!!");
request.getRequestDispatcher("admin/editTeacher.jsp").forward(request, response);
stuNum=null;
}
if(courseName==""){
courseName=null;
}
if(stuName==""){
stuName=null;
}
if(stuClass==""){
stuClass=null;
}
if(major==""){
major=null;
}*/
double scoreGrade=0;
score=new Score( stuNum, stuName, stuClass,
courseName, scoreGrade, major);
PageBean rs=scoreServiceImpl.selectStuScore(pageNo, pageCount, score);
request.setAttribute("list", rs);
request.setAttribute("score", score);
request.getRequestDispatcher("admin/selectblurScore.jsp").forward(request, response);
}
}
public class ServletEditUser extends HttpServlet{
private User user;
private ServletFindAllUser servletFindAllUser=new ServletFindAllUser();
private UserServiceImpl userServiceImpl=new UserServiceImpl();
}
private String findFileSavePathByFileName(String fileName,
String fileSaveRootPath) {
int hashCode=fileName.hashCode();
int dir1=hashCode&0xf;
int dir2=(hashCode&0xf0)>>4;
String dir=fileSaveRootPath+"\\"+dir1+"\\"+dir2;
File file=new File(dir);
if(!file.exists()){
file.mkdirs();
}
return dir;
}
// 以下为服务器端判断客户端浏览器类型的方法
private String getBrowser(HttpServletRequest request) {
String UserAgent = request.getHeader("USER-AGENT").toLowerCase();
if (UserAgent != null) {
if (UserAgent.indexOf("msie") >= 0)
return "IE";
if (UserAgent.indexOf("firefox") >= 0)
return "FF";
if (UserAgent.indexOf("safari") >= 0)
return "SF";
}
return null;
}
}