修改密码
UserServlet
1 //修改密码 2 public String updatePassword(HttpServletRequest req, HttpServletResponse resp) 3 { 4 /* 5 * 1、封装表单数据到userzhong 6 * 2\从session中获取uuid 7 * 3、使用uid 和表单中的oldPass和newpass来调用serviceff 8 * 如果出现异常 保存异常信息到request中 转发到pwd.jsp 9 * 4、保存成功信息到request中10 * 5、转发到msg.jsp11 */12 13 User formUser = CommonUtils.toBean(req.getParameterMap(), User.class);14 User user=(User) req.getSession().getAttribute("sessionUser");15 if(user==null)16 {17 req.setAttribute("msg", "您还没有登录");18 return "f:/jsps/user/login.jsp";19 }20 21 try {22 userService.updatePassword(user.getUid(), formUser.getNewpass(), 23 formUser.getLoginpass());24 //没有抛出异常保存成功信息25 req.setAttribute("msg", "修改密码成功");26 req.setAttribute("code", "success");27 return "f:/jsps/msg.jsp";28 } catch (UserException e) {29 req.setAttribute("msg", e.getMessage());//保存异常信息到request中30 req.setAttribute("user", formUser);31 return "f:/jsps/user/pwd.jsp";32 }33 34 }
UserService
1 // 修改密码 2 public void updatePassword(String uid, String newPass, String oldPass) 3 throws UserException { 4 5 try { 6 // 校验老密码 7 boolean bool = userDao.findByUidAndPassword(uid, oldPass); 8 if (!bool) { 9 throw new UserException("老密码错误");10 }11 // 修改密码12 userDao.updatePassword(uid, newPass);13 } catch (SQLException e) {14 // TODO Auto-generated catch block15 throw new RuntimeException(e);16 }17 18 }
退出功能实现:
1 // 退出功能2 public String quit(HttpServletRequest req, HttpServletResponse resp) {3 // session无效4 req.getSession().invalidate();5 return "r:/jsps/user/login.jsp";6 7 }