登录功能代码实现

登录功能_代码实现

复制代码
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>&times;</span></button>
    <strong>${login_msg}</strong>
</div>

 

posted @   夫君  阅读(38)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示