基于javaweb+mysql的jsp+servlet学生成绩管理系统(管理员、教师、学生)(java+jsp+servlet+javabean+mysql+tomcat)

基于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)

			request.getRequestDispatcher("admin/addScore.jsp").forward(request, response);
		}
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}
}
package servlet;

public class ServletSearchScore extends HttpServlet{
	
	private Score score;
	private ScoreServiceImpl scoreServiceImpl=new ScoreServiceImpl();

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		req.setCharacterEncoding("utf-8");
		resp.setContentType("text/html;charset=utf-8");
		
		doPost(req, resp);
		
	}

	@Override
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		int pageNo=1;
		int pageCount=1;
		String pageNoStr=request.getParameter("pageNo");
		String pageCountStr=request.getParameter("pageCount");
		if(pageNoStr!=null){
			pageNo=Integer.parseInt(pageNoStr);
		}
		if(pageCountStr!=null){
			pageCount=Integer.parseInt(pageCountStr);
		}

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");
		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);
	}
}
package servlet.teacher;

		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);
		}
		
	
		fis.close();
		os.close();
		
			int rs=courseServiceImpl.addCos(course,coDate);
			if(rs>0){
				request.setAttribute("msg", "添加成功!!");
				servletFindAllCos.doGet(request, response);
			//	request.getRequestDispatcher("admin/addCourse.jsp").forward(request, response);
			}else{
				request.setAttribute("msg", "添加失败!!");
				request.getRequestDispatcher("admin/addCourse.jsp").forward(request, response);
			}
		}else{
			request.setAttribute("msg", "该课程已录入,请重新输入!!");
			request.getRequestDispatcher("admin/addCourse.jsp").forward(request, response);
		}
		
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}
}
package servlet;

public class ServletEditCos extends HttpServlet{

	private Course course;
	private ServletFindAllCos servletFindAllCos=new ServletFindAllCos();
	private ServletSelectCos selectOne=new ServletSelectCos();

					// 解决上传文件中文乱码
					upLoad.setHeaderEncoding("utf-8");

					// 3、判断提交上来的数据是否是上传表单的数据
					if (!ServletFileUpload.isMultipartContent(request)) {

						// 按照传统方式获取数据
						return;
					}
					// 设置上传单个文件的大小的最大值,目前是设置为1024*1024字节,也就是1MB
					upLoad.setFileSizeMax(1024 * 1024);

					// 设置上传文件总量的最大值,最大值=同时上传的多个文件的大小的最大值的和,目前设置为10MB
					upLoad.setSizeMax(1024 * 1024 * 10);

					// 4、使用ServletFileUpload解析器解析上传数据,解析结果返回的是一个List<FileItem>集合,
					// 每一个FileItem对应一个Form表单的输入项

				
					List<FileItem> list = upLoad.parseRequest(request);
					// List<FileItem> list=upLoad.parseRequest(request);
					// 如果fileitem中封装的是普通输入项的数据
					for (FileItem item : list) {
						if (item.isFormField()) {
							String name = item.getFieldName();
							/*// 解决普通输入项的数据中文乱码
							String value = item.getString("utf-8");
							System.out.println(name + "=" + value);*/
						} else {
							// 吐过fileitem中封装的是上传文件
							// 得到上传的文件名称
							String fileName = item.getName();
							
							if (fileName == null || fileName.trim().equals("")) {
								continue;
							}
							// 注意:不同的浏览器提交的文件名是不一样的,有些浏览器提交上来的文件名是带有路径的,
							// 如: c:\a\b\1.txt,而有些只是单纯的文件名,如:1.txt
							// 处理获取到的上传文件的文件名的路径部分,只保留文件名部分
							fileName = fileName
									.substring(fileName.lastIndexOf("\\") + 1);
							// 得到上传文件扩展名
							String fileExtName = fileName.substring(fileName
									.lastIndexOf(".") + 1);
							// 如果需要限制上传的文件类型,那么可以通过文件扩展名来判断文件类型是否合法
							//System.out.println("上传文件扩展名是:" + fileExtName);
							// 获取item中的上传文件的输入流
							InputStream is = item.getInputStream();

public class ServletEditStu extends HttpServlet{
	
	private Student student;
	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 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);
	}
}
package servlet;

public class ServletEditTea extends HttpServlet{

package servlet.teacher;

public class ServletTeaSearchScore extends HttpServlet{
	
	private Score score;
	private ScoreServiceImpl scoreServiceImpl=new ScoreServiceImpl();

	@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 {
		int pageNo=1;
		int pageCount=1;
		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);
	}
	
	// 以下为服务器端判断客户端浏览器类型的方法  
    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;  
    }  

}
package servlet;

public class ServletaddTeacher extends HttpServlet{

	private User user;
	private Teacher teacher;
	private UserServiceImpl userServiceImpl = new UserServiceImpl();
	private TeacherServiceImpl teacherServiceImpl =new TeacherServiceImpl();
	private ServletFindAllTea findTea=new ServletFindAllTea();

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}
}
package servlet;

public class ServletListFile 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 {
		//获取上传文件的目录
		String uploadFilePath=this.getServletContext().getRealPath("/WEB-INF/upload");
		//存储要下载的文件名
		Map<String,String> fileNameMap=new HashMap<String, String>();
		/*
		 * 递归遍历filepath目录下的所有文件和目录,将文件的文件名存储到map集合中
		 */
		//file既可以代表一个文件也可以代表一个目录
		listFile(new File(uploadFilePath),fileNameMap);
		//将map集合发送到listFile.jsp页面进行显示
		request.setAttribute("fileNameMap", fileNameMap);
		request.getRequestDispatcher("admin/fileList.jsp").forward(request, response);
	}

	private void listFile(File file, Map<String, String> fileNameMap) {
		//如果file代表的不是一个文件,而是一个目录
		if(!file.isFile()){
			//列出该目录下的所有文件和目录
			File files[]=file.listFiles();
			//遍历files数组
			}
		}else{
			request.setAttribute("msg", "该工号已存在,请重新录入!!");
			request.getRequestDispatcher("admin/addTeacher.jsp").forward(request, response);
		}
		

	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}
	
}
package servlet;

public class ServletLogin extends HttpServlet{
	private User user;
	private UserServiceImpl userServiceImpl=new UserServiceImpl();
	
	public void doGet(HttpServletRequest request,HttpServletResponse response)
		throws ServletException,IOException{
		String num=request.getParameter("ID");
		String pwd=request.getParameter("pwd");
		int roleID=Integer.parseInt(request.getParameter("role")); 
		user=new User(num,pwd,roleID);
		User rs=userServiceImpl.login(user);
		if(rs.getUserName()!=null){
				} catch (FileUploadBase.SizeLimitExceededException e) {
					e.printStackTrace();
					request.setAttribute("message", "上传文件的总的大小超出限制的最大值!!!");
					request.getRequestDispatcher("admin/fileLoadFail.jsp").forward(
							request, response);
					return;
				} catch (Exception e) {
					message = "文件上传失败!";
					e.printStackTrace();
				}
				request.setAttribute("message", message);
				request.getRequestDispatcher("admin/fileLoadFail.jsp").forward(
						request, response);
	}

	private String makePath(String saveFileName, String savePath) {
		// 得到文件名的hashCode的值,得到的就是fileName这个字符串对象在内存中的地址
		int hashCode = saveFileName.hashCode();
		int dir1 = hashCode & 0xf; // 0-15
		int dir2 = (hashCode & 0xf0) >> 4; // 0-15
		// 构造信息的保存目录
		String dir = savePath + "\\" + dir1 + "\\" + dir2;
		// file既可以代表文件也可以代表目录
		File file = new File(dir);
		// 如果目录不存在
		if (!file.exists()) {
			// 创建目录
			file.mkdirs();
		}
		return dir;

	}
	
	private String makeFileName(String fileName) {
		// 为防止文件覆盖的现象发生,要为上传文件产生一个唯一的文件名
		return UUID.randomUUID().toString() + "_" + fileName;

	}

}
package servlet;


public class ServletEditTeacherInfo extends HttpServlet{

	private Teacher teacher;
	private TeacherServiceImpl teacherServiceImpl=new TeacherServiceImpl();
	private ServletTeacherInfo servletTeacherInfo=new ServletTeacherInfo();
	
	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", "修改成功!!");
			servletTeacherInfo.doGet(request, response);
		}else{
			request.setAttribute("msg", "修改失败!!");
			request.getRequestDispatcher("teacher/editTeacherInfo.jsp").forward(request, response);
		}
		
	}
	public void doPost(HttpServletRequest request,HttpServletResponse response)
			throws ServletException,IOException{
		doGet(request,response);
	}
}
package servlet.teacher;

                return "IE";  
            if (UserAgent.indexOf("firefox") >= 0)  
                return "FF";  
            if (UserAgent.indexOf("safari") >= 0)  
                return "SF";  
        }  
        return null;  
    }  

}
package servlet;

public class ServletaddTeacher extends HttpServlet{

	private User user;
	private Teacher teacher;
	private UserServiceImpl userServiceImpl = new UserServiceImpl();
	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 pwd = request.getParameter("password");
		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");
		String phone = request.getParameter("phone");
		int roleID = Integer.parseInt(request.getParameter("role"));
		user = new User(teaNum, teaName, pwd, phone, roleID);
		teacher = new Teacher(teaNum, teaName, teaSex, teaAge, teaCourse, major,
		return dir;

	}
	
	private String makeFileName(String fileName) {
		// 为防止文件覆盖的现象发生,要为上传文件产生一个唯一的文件名
		return UUID.randomUUID().toString() + "_" + fileName;

	}

}
package servlet;

public class ServletDownloadFile 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 {
		/*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目录下的子目录当中
									.substring(fileName.lastIndexOf("\\") + 1);
							// 得到上传文件扩展名
							String fileExtName = fileName.substring(fileName
									.lastIndexOf(".") + 1);
							// 如果需要限制上传的文件类型,那么可以通过文件扩展名来判断文件类型是否合法
							//System.out.println("上传文件扩展名是:" + fileExtName);
							// 获取item中的上传文件的输入流
							InputStream is = item.getInputStream();
							// 得到文件保存的名称
							String saveFileName = makeFileName(fileName);
							// 得到文件保存目录
							String realSavePath = makePath(saveFileName, savePath);
							// 创建一个文件输出流
							FileOutputStream fos = new FileOutputStream(realSavePath
									+ "\\" + saveFileName);
							// 创建一个缓冲区
							byte buffer[] = new byte[1024];
							// 判断输入流中的数据是否已经读完的标识
							int len = 0;
							// 循环将输入流读入到缓冲区中,(len=in.read(buffer))>0就表示in里面还有数据
							while ((len = is.read(buffer)) > 0) {
								// 使用FileOutputStream输出流将缓冲区的数据写入到指定的目录(savePath + "\\"
								// + filename)当中
								fos.write(buffer, 0, len);
							}
							// 关闭输入流
							is.close();
							// 关闭输出流
							fos.close();
							// 删除处理文件上传时生成的临时文件
							// item.delete();
							message = "文件上传成功!";

						}

					}
				} catch (FileUploadBase.FileSizeLimitExceededException e) {
					e.printStackTrace();
					request.setAttribute("message", "单个文件超出最大值!!!");
					request.getRequestDispatcher("admin/fileLoadFail.jsp").forward(
							request, response);
					return;
					// e.printStackTrace();
				} catch (FileUploadBase.SizeLimitExceededException e) {
					e.printStackTrace();
package servlet;

public class ServletaddTeacher extends HttpServlet{

	private User user;
	private Teacher teacher;
	private UserServiceImpl userServiceImpl = new UserServiceImpl();
	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 pwd = request.getParameter("password");
		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");
		String phone = request.getParameter("phone");
		int roleID = Integer.parseInt(request.getParameter("role"));
		user = new User(teaNum, teaName, pwd, phone, roleID);
		teacher = new Teacher(teaNum, teaName, teaSex, teaAge, teaCourse, major,
				department);
		//验证是否存在该教师
		User rs=userServiceImpl.login(user);
		if(rs.getUserID()==0){
			int rsUser=userServiceImpl.addUser(user);
			int rsTea=teacherServiceImpl.addTea(teacher);
			if(rsTea>0 && rsUser>0){
				request.setAttribute("msg", "添加成功!!");
			request.getRequestDispatcher("login/login.jsp").forward(request, response);
		}
	}
	
	public void doPost(HttpServletRequest request,HttpServletResponse response)
			throws ServletException,IOException{
			doGet(request,response);
		}
}
package servlet;

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);
			if(rsStu>0 && rsUser>0){
			e.printStackTrace();
		} 

		course=new Course(courseID,courseName,courseCredit,courseHours,courseTea,courseDate);
		int rs=courseServiceImpl.editCos(course,coDate);
		if(rs>0){
			request.setAttribute("msg", "修改成功!!");
			servletFindAllCos.doGet(request, response);
			//	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);
	}
}
package servlet.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);
	}
	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);
			if(rsStu>0 && rsUser>0){
				request.setAttribute("msg", "添加成功!!");
				findStu.doGet(request, response);
				
				/*List list=studentDaoImpl.findAll();
				request.setAttribute("list", list);
				request.getRequestDispatcher("admin/studentAllInfo.jsp").forward(request, response);*/
			}else{
				request.setAttribute("msg", "添加失败!!");
				request.getRequestDispatcher("admin/addStudent.jsp").forward(request, response);
			}
		}else{
			request.setAttribute("msg", "该学号已存在,请重新录入!!");
			request.getRequestDispatcher("admin/addStudent.jsp").forward(request, response);
		}
		

	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}
}
package servlet;

		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);
	}
}
package servlet;

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)

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,
		//创建输出流
		OutputStream os=response.getOutputStream();
		//创建缓冲区
		byte buffer[]=new byte[1024];
		int len=0;
		//循环将输入流中的内容读取到缓冲区当中
		while((len=fis.read(buffer))>0){
			os.write(buffer, 0, len);
		}
		
	
		fis.close();
		os.close();
		
		
	}

	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;  
    }  

}
package servlet;


public class ServletSearchScore extends HttpServlet{
	
	private Score score;
	private ScoreServiceImpl scoreServiceImpl=new ScoreServiceImpl();

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		req.setCharacterEncoding("utf-8");
		resp.setContentType("text/html;charset=utf-8");
		
		doPost(req, resp);
		
	}

	@Override
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		int pageNo=1;
		int pageCount=1;
		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 courseName=request.getParameter("cosName");
		String stuName=request.getParameter("stuName");
		String stuClass=request.getParameter("stuClass");
		String major=request.getParameter("major");
		/*if(stuNum==""){
			stuNum=null;
		}
		if(courseName==""){

public class ServletaddTeacher extends HttpServlet{

	private User user;
	private Teacher teacher;
	private UserServiceImpl userServiceImpl = new UserServiceImpl();
	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 pwd = request.getParameter("password");
		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");
		String phone = request.getParameter("phone");
		int roleID = Integer.parseInt(request.getParameter("role"));
		user = new User(teaNum, teaName, pwd, phone, roleID);
		teacher = new Teacher(teaNum, teaName, teaSex, teaAge, teaCourse, major,
				department);
		//验证是否存在该教师
		User rs=userServiceImpl.login(user);
		if(rs.getUserID()==0){
			int rsUser=userServiceImpl.addUser(user);
			int rsTea=teacherServiceImpl.addTea(teacher);
			if(rsTea>0 && rsUser>0){
				request.setAttribute("msg", "添加成功!!");
				findTea.doGet(request, response);
			//	request.getRequestDispatcher("admin/teacherAllInfo.jsp").forward(request, response);
				/*List list=studentDaoImpl.findAll();
				request.setAttribute("list", list);
				request.getRequestDispatcher("admin/studentAllInfo.jsp").forward(request, response);*/
			}else{
				request.setAttribute("msg", "添加失败!!");
				request.getRequestDispatcher("admin/addTeacher.jsp").forward(request, response);
			}
		}else{
			request.setAttribute("msg", "该工号已存在,请重新录入!!");
			request.getRequestDispatcher("admin/addTeacher.jsp").forward(request, response);
		}
		

	}

		//读取要下载的文件,保存到文件输入流
		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);
		}
		
	
		fis.close();
		os.close();
		
		
	}

	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 dir;

	}
	
	private String makeFileName(String fileName) {
		// 为防止文件覆盖的现象发生,要为上传文件产生一个唯一的文件名
		return UUID.randomUUID().toString() + "_" + fileName;

	}

}
package servlet;

public class ServletDownloadFile 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 {
		/*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);

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

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
学生成绩信息管理系统涉及到学生教师、系统管理员、班级、学生成绩、课程。设置一个系统管理员对系统进行管理。所有用户需输入账号、密码登录进入系统;管理员进入系统后可对学生、老师、班级、课程进行增删改查操作;学生进入系统,查看成绩、查看和修改自己的信息;老师进入系统后,对自己这门课程的学生设置课程成绩、查看和修改自己的信息,查看学生的信息和成绩、以及统计分析学生的成绩; 管理员为班级设置年级,为年级设置课程,为班级的每门课程设置老师,为学生设置班级。一个年级有多门课程(语文、数学、外语等等),班级的每门课程只能有一名老师,一个老师可以有多门课程;老师选择自己这门课程为该课程的学生登记成绩。老师可以查看其他老师的信息(可以当成是老师的通讯录),查看本课程学生的信息和成绩;学生可以查看班级其他同学的信息(可以看成是班级的同学录)。 考试分为两种,一种是年级统考,一种是平时考试。年级统考需要管理员事先添加一次年级统考,考试成绩出来后,老师进入系统选择该次考试为学生登记成绩。平时考试则是班级平时的考试,老师添加考试信息,登记成绩。成绩统计分析则是针对年级统考进行分析,主要涉及各学科分数名次,总分名次。 技术实现 系统环境:Windows开发工具:IDEAJava版本:JDK 1.8服务器:Tomcat 1.8数据库:MySQL 5.X系统采用技术:Servlet+Jsp+Jdbc+H-ui+EasyUI+jQuery+Html+Css+Ajax 系统功能系统主要分为三种用户角色,分别是管理员、老师以及学生,其具体功能如下: - 管理员   学生信息管理、教师信息管理、年级信息管理、班级信息管理、课程信息管理、考试信息管理,系统参数设置 - 老师   教学管理、教师个人信息维护、教师通讯录管理 - 学生考试成绩查询、学生通讯录、学生个人信息维护 运行截图 登录界面: 管理员界面: 考试列表:  成绩统计: 学生信息管理: 教师信息管理: 年级、班级信息管理:  系统设置: 教师界面:  成绩登记:  教师通讯录: 个人信息:  学生界面: 学生成绩查询: 班级通讯录: 学生个人信息:              

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值