——————————DescriptionStart——————————
运行环境 Java≥8、MySQL≥5.7、Tomcat≥8
开发工具 eclipse/idea/myeclipse/sts等均可配置运行
适用 课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的JSP+Servlet学生请假管理系统(java+servlet+mysql+jdbc+tomcat+jsp+bootstrap)
管理员: admin 123456
学生: a 123456 b 123456
功能: 学生可以增改查(不可以改审批状态) 老师可以删改查(可以改审批状态)
——————————CodeStart——————————
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 g.setColor(getRandomColor(10 , 100 )); g.drawString(String.valueOf(codeChar), 16 * i + random.nextInt(7 ), height - random.nextInt(6 )); } HttpSession session = request.getSession(); session.setMaxInactiveInterval(5 * 60 ); session.setAttribute("validationCode" , validationCode.toString()); g.dispose(); OutputStream os = response.getOutputStream(); ImageIO.write(image, "JPEG" , os); } else if ("resetPassword" .equalsIgnoreCase(action)) { String msg; User loginUser = (User) request.getSession().getAttribute("loginUser" ); String oldPassword = request.getParameter("oldPassword" ); if (!loginUser.getPassword().equals(oldPassword)) { msg = "原密码错误!" ; } else { String newPassword = request.getParameter("newPassword" ); loginUser.setPassword(newPassword); UserService userService = new UserServiceImpl(); userService.update(loginUser); msg = "修改成功!" ; } request.getSession().setAttribute("alert_msg" , msg); request.getRequestDispatcher("reset_password.jsp" ).forward(request, response); } else { response.sendRedirect("login.jsp" ); } } @Override public void doGet (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } private Color getRandomColor (int minColor, int maxColor) { Random random = new Random(); if (minColor > 255 ) minColor = 255 ;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 } @Override public void doGet (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } private void redirectList (HttpServletRequest request, HttpServletResponse response) throws IOException { String searchColumn = request.getParameter("searchColumn" ); String keyword = request.getParameter("keyword" ); Map<String, Object> params = new HashMap(); params.put("searchColumn" , searchColumn); params.put("keyword" , keyword); User loginUser = (User) request.getSession().getAttribute("loginUser" ); if (!"管理员" .equals(loginUser.getUserType())) { params.put("createBy" , loginUser.getId()); } LeaveService leaveService = new LeaveServiceImpl(); Map<String, Object> map = leaveService.list(params); request.getSession().setAttribute("list" , map.get("list" )); Integer totalRecord = (Integer) map.get("totalCount" ); String pageNum = request.getParameter("pageNum" ); com.demo.util.PageBean<Object> pb = new com.demo.util.PageBean(Integer.valueOf(pageNum != null ? pageNum : "1" ), totalRecord); params.put("startIndex" , pb.getStartIndex()); params.put("pageSize" , pb.getPageSize()); List list = (List) leaveService.list(params).get("list" ); pb.setServlet("LeaveServlet" );
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 * 根据参数,查询出条例条件的记录集合,最后将数据返回给调用处或者将数据集合设置到session域里,再跳转到对应的列表页面 * * @param request * @param response */ private void redirectList (HttpServletRequest request, HttpServletResponse response) throws IOException { String searchColumn = request.getParameter("searchColumn" ); String keyword = request.getParameter("keyword" ); Map<String, Object> params = new HashMap(); params.put("searchColumn" , searchColumn); params.put("keyword" , keyword); User loginUser = (User) request.getSession().getAttribute("loginUser" ); if (!"管理员" .equals(loginUser.getUserType())) { params.put("createBy" , loginUser.getId()); } LeaveService leaveService = new LeaveServiceImpl(); Map<String, Object> map = leaveService.list(params); request.getSession().setAttribute("list" , map.get("list" )); Integer totalRecord = (Integer) map.get("totalCount" ); String pageNum = request.getParameter("pageNum" ); com.demo.util.PageBean<Object> pb = new com.demo.util.PageBean(Integer.valueOf(pageNum != null ? pageNum : "1" ), totalRecord); params.put("startIndex" , pb.getStartIndex()); params.put("pageSize" , pb.getPageSize()); List list = (List) leaveService.list(params).get("list" ); pb.setServlet("LeaveServlet" ); pb.setSearchColumn(searchColumn); pb.setKeyword(keyword); pb.setList(list); request.getSession().setAttribute("pageBean" , pb); request.getSession().setAttribute("list" , pb.getList()); response.sendRedirect("leave_list.jsp" ); } }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 */ private void redirectList (HttpServletRequest request, HttpServletResponse response) throws IOException { String searchColumn = request.getParameter("searchColumn" ); String keyword = request.getParameter("keyword" ); Map<String, Object> params = new HashMap(); params.put("searchColumn" , searchColumn); params.put("keyword" , keyword); User loginUser = (User) request.getSession().getAttribute("loginUser" ); if (!"管理员" .equals(loginUser.getUserType())) { params.put("id" , loginUser.getId()); } UserService userService = new UserServiceImpl(); Map<String, Object> map = userService.list(params); request.getSession().setAttribute("list" , map.get("list" )); Integer totalRecord = (Integer) map.get("totalCount" ); String pageNum = request.getParameter("pageNum" ); com.demo.util.PageBean<Object> pb = new com.demo.util.PageBean(Integer.valueOf(pageNum != null ? pageNum : "1" ), totalRecord); params.put("startIndex" , pb.getStartIndex()); params.put("pageSize" , pb.getPageSize()); List list = (List) userService.list(params).get("list" ); pb.setServlet("UserServlet" ); pb.setSearchColumn(searchColumn); pb.setKeyword(keyword); pb.setList(list); request.getSession().setAttribute("pageBean" , pb); request.getSession().setAttribute("list" , pb.getList()); response.sendRedirect("user_list.jsp" ); } } public class LoginFilter implements Filter { public void destroy () {
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 public class UserServlet extends HttpServlet { @Override public void doPost (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8" ); response.setCharacterEncoding("UTF-8" ); String action = request.getParameter("action" ); if ("add" .equals(action)) { User vo = new User(); vo.setUsername(request.getParameter("username" )); vo.setPassword(request.getParameter("password" )); vo.setRealName(request.getParameter("realName" )); vo.setUserType(request.getParameter("userType" )); vo.setCreateBy(((com.demo.vo.User) request.getSession().getAttribute("loginUser" )).getId()); UserService userService = new UserServiceImpl(); userService.add(vo); this .redirectList(request, response); } else if ("delete" .equals(action)) { long id = Long.parseLong(request.getParameter("id" )); UserService userService = new UserServiceImpl(); userService.delete(id); this .redirectList(request, response); } else if ("edit" .equals(action)) { User vo = new User(); vo.setId(Long.valueOf(request.getParameter("id" ))); vo.setUsername(request.getParameter("username" )); vo.setPassword(request.getParameter("password" )); vo.setRealName(request.getParameter("realName" )); vo.setUserType(request.getParameter("userType" )); vo.setCreateBy(Long.valueOf(request.getParameter("createBy" )));
——————————PayStart——————————
项目链接: https://javayms.github.io?id=172325201106201sw https://javayms.pages.dev?id=172325201106201sw