qwb0614

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  187 随笔 :: 0 文章 :: 0 评论 :: 2048 阅读
复制代码
public void login(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        //1. 获取用户名和密码
        String remember = request.getParameter("remember");
        BufferedReader br = request.getReader();
        String params = br.readLine();//json字符串
        //转为Brand对象
        User us = JSON.parseObject(params, User.class);
        
        if("root".equals(us.getUsername()))
        {
            if("1234".equals(us.getPassword()))
            {
                if("true".equals(remember))
                {
                    //勾选了,发送Cookie

                    //1. 创建Cookie对象
                    Cookie c_username = new Cookie("username",us.getUsername());
                    Cookie c_password = new Cookie("password",us.getPassword());
                    // 设置Cookie的存活时间
                    c_username.setMaxAge( 60 * 60 * 24 * 1);
                    c_password.setMaxAge( 60 * 60 * 24 * 1);
                    //2. 发送
                    response.addCookie(c_username);
                    response.addCookie(c_password);
                }
                HttpSession session = request.getSession();
                User user = new User();
                user.setUsername("root");
                user.setPassword("1234");
                session.setAttribute("user",user);
                request.getRequestDispatcher("rootmenu.jsp").forward(request,response);
            }

            else
                request.getRequestDispatcher("index2.jsp").forward(request,response);
        }
        else
        {
            //2. 调用service查询
            User user = brandService.Login(us.getUsername(), us.getPassword());
            System.out.println(user);
            //3. 判断
            if(user != null){
                //登录成功,跳转到查询所有的BrandServlet

                //判断用户是否勾选记住我
                if("true".equals(remember)){
                    //勾选了,发送Cookie

                    //1. 创建Cookie对象
                    Cookie c_username = new Cookie("username",us.getUsername());
                    Cookie c_password = new Cookie("password",us.getPassword());
                    // 设置Cookie的存活时间
                    c_username.setMaxAge( 60 * 60 * 24 * 1);
                    c_password.setMaxAge( 60 * 60 * 24 * 1);
                    //2. 发送
                    response.addCookie(c_username);
                    response.addCookie(c_password);
                }

                //将登陆成功后的user对象,存储到session
                HttpSession session = request.getSession();
                session.setAttribute("user",user);

                response.getWriter().write("success");


            }else {

                response.getWriter().write("");
            }
        }
    }
    public void register(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");

        //1. 获取用户名和密码数据
        BufferedReader br = request.getReader();
        String params = br.readLine();//json字符串
        System.out.println(params);
        //转为Brand对象
        User us = JSON.parseObject(params, User.class);

        // 获取用户输入的验证码

        // 程序生成的验证码,从Session获取
        HttpSession session = request.getSession();
        String checkCodeGen = (String) session.getAttribute("checkCodeGen");
        System.out.println(checkCodeGen);
        // 比对
        if(!checkCodeGen.equalsIgnoreCase(us.getCheckcode())){

            response.getWriter().write("");

            // 不允许注册
            return;
        }



        //2. 调用service 注册
        boolean flag = brandService.addUser(us);
        //3. 判断注册成功与否
        if(flag){
            //注册功能,跳转登陆页面

            response.getWriter().write("success");
        }else {
            //注册失败,跳转到注册页面

            response.getWriter().write("error");
        }
    }
复制代码
复制代码
public class User {
    int id;

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", username='" + username + '\'' +
                ", password='" + password + '\'' +
                ", checkcode='" + checkcode + '\'' +
                '}';
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    String username;
    String password;
    String checkcode;

    public String getCheckcode() {
        return checkcode;
    }

    public void setCheckcode(String checkcode) {
        this.checkcode = checkcode;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}
复制代码

学习到了登陆注册后端代码

posted on   嘎嘎鸭1  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示