登录功能_代码实现
public class LoginServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 设置编码 request.setCharacterEncoding("UTF-8"); // 获取数据 String verifycode = request.getParameter("verifycode"); Map map = request.getParameterMap(); // 验证码校验 HttpSession session = request.getSession(); String o = (String) session.getAttribute("CHECKCODE_SERVER"); session.removeAttribute("CHECKCODE_SERVER"); if (!o.equalsIgnoreCase(verifycode)) { //验证码错误 //提示信息 request.setAttribute("login_msg", "验证码错误"); //跳转登陆页面 request.getRequestDispatcher("/login.jsp").forward(request, response); return; } // 封装user对象 User user = new User(); try { BeanUtils.populate(user,map); } catch (IllegalAccessException e) { throw new RuntimeException(e); } catch (InvocationTargetException e) { throw new RuntimeException(e); } // 调用Servlet查询 UserService service = new UserServiceImpl(); User loginUser = service.login(user); // 判断登录成功 if (loginUser!=null){ // 登路成功 // 将用户存入session session.setAttribute("user",loginUser); // 跳转页面 response.sendRedirect(request.getContextPath()+"/index.jsp"); }else { request.setAttribute("login_msg","用户名或者验证码错误"); // 跳转‘ request.getRequestDispatcher("/login.jsp").forward(request,response); } } }
jsp错误提示页面
<!-- 出错显示的信息框 --> <div class="alert alert-warning alert-dismissible" role="alert"> <button type="button" class="close" data-dismiss="alert" > <span>×</span></button> <strong>${login_msg}</strong> </div>
标签:功能,登录,代码,request,session,user,new,login,response From: https://www.cnblogs.com/xuche/p/17085882.html