使用Java代码实现登录注册功能

您所在的位置:网站首页 java账号密码登录方法类型是什么 使用Java代码实现登录注册功能

使用Java代码实现登录注册功能

#使用Java代码实现登录注册功能| 来源: 网络整理| 查看: 265

实现思路:分别创建5个包和5个类{cn.f.pojo(User.java);cn.f.Dao(UserDao.java);cn.f.Dao.impl(UserDaoImpl.java); cn.f.game(GuessNumber.java);  cn.f.test(UserTest.java)}

第一步:

 封装cn.f.pojo(User.java)类

代码:

package cn.f.pojo;

public class User {     private String name;     private String mima;

    public String getName() {         return name;     }

    public void setName(String name) {         this.name = name;     }

    public String getMima() {         return mima;     }

    public void setMima(String mima) {         this.mima = mima;     }

    public User(String name, String mima) {         super();         this.name = name;         this.mima = mima;     }

    public User() {         super();     }

    @Override     public String toString() {         return "User [name=" + name + ", mima=" + mima + "]";     }

}

 

第二步:

创建一个用户登录注册接口cn.f.Dao(UserDao.java)

代码:

package cn.f.Dao;

import cn.f.pojo.User;

public interface UserDao { //    这是登陆功能 public abstract boolean isLogin(String name,String mima); //这是注册功能 public abstract void regist(User user);

}

 

第三步:

创建一个实现用户登录注册功能实现类cn.f.Dao.impl(UserDaoImpl.java)

代码:

package cn.f.Dao.impl;

import java.util.ArrayList;

import cn.f.Dao.UserDao; import cn.f.pojo.User;

//这是用户操作具体实现类 public class UserDaoImpl implements UserDao {     // 为了让多个方法能够使用一个集合,就把集合定义为成员变量     // 为了不让外人看到,就用private     // 为了让多个对象共享同一个成员变量用static     private static ArrayList u = new ArrayList();

    @Override     public boolean isLogin(String name, String mima) {         // 遍历集合,获取每一个用户,并判断该用户名和密码是否和传递过来的匹配         boolean flag = false;         for (User s : u) {             if (s.getName().equals(name) && s.getMima().equals(mima)) {                 flag = true;                 break;             }

        }         return flag;     }

    @Override     public void regist(User user) {         // 把用户信息存储集合

        u.add(user);

    }

}

 

第四步:

增加用户体验用户注册登录成功后给用户玩个小游戏cn.f.game(GuessNumber.java)

代码:

package cn.f.game;

import java.util.Scanner;

public class GuessNumber {     private GuessNumber() {

    }

    public static void strat() {         // 产生一个随机数         int number = (int) (Math.random() * 100) + 1;         // 定义一个统计变量         int count = 0;         while (true) {             Scanner sc = new Scanner(System.in);             System.out.println("请输入数据(1-100):");             int guessNumber = sc.nextInt();             count++;             // 判断             if (guessNumber > number) {                 System.out.println("你猜的数据" + guessNumber + "大了");             } else if (guessNumber < number) {                 System.out.println("你猜的数据" + guessNumber + "小了");

            } else {                 System.out.println("恭喜你,"+count+"次猜中了!");                 break;             }

        }

    } }

 

第五步:

实现用户登录注册功能测试cn.f.test(UserTest.java)

代码:

package cn.f.test;

import java.util.Scanner;

import cn.f.Dao.UserDao; import cn.f.Dao.impl.UserDaoImpl; import cn.f.game.GuessNumber; import cn.f.pojo.User;

public class UserTest {     static Scanner sc = new Scanner(System.in);     // 多态     static UserDao ud = new UserDaoImpl();

    public static void main(String[] args) {         while (true) {             // 欢迎界面,给出选项             System.out.println("-------------欢迎光临--------------");             System.out.println("1.登录");             System.out.println("2.注册");             System.out.println("3.退出");             System.out.println("请输入你的选择:");             // 键盘录入选择,根据选择做出不同的操作

            // 为了后面录入信息的方便,我所有的数据录入全部用字符接受             String m = sc.nextLine();             switch (m) {             case "1":                 denglu();                 break;             case "2":                 zhuce();                 break;             case "3":

            default:                 System.out.println("谢谢使用,欢迎下次再来!");                 System.exit(0);             }         }     }

    public static void denglu() {         System.out.println("-------------登录界面(请先注册后再登录!)--------------");         System.out.println("请输入用户名:");         String n = sc.nextLine();         System.out.println("请输入密码:");         String p = sc.nextLine();         // 调用登录功能         boolean flag = ud.isLogin(n, p);         if (flag) {             System.out.println("登录成功!奖励你玩游戏。");             System.out.println("你要玩吗?y/n");             while (true) {                 String r = sc.nextLine();                 if (r.equalsIgnoreCase("y")) {                     // 玩游戏                     GuessNumber.strat();                     System.out.println("是否继续游戏?y/n");                 }else{                     break;                 }             }             System.out.println("谢谢使用,欢迎下次再来!");             System.exit(0);         } else {             System.out.println("用户名或者密码有误,登录失败!");         }     }

    public static void zhuce() {         // 注册界面,请输入用户名和密码         System.out.println("-------------注册界面--------------");         System.out.println("请输入用户名:");         String name = sc.nextLine();         System.out.println("请输入密码:");         String mima = sc.nextLine();         // 把用户名和密码封装到一个对象中         User user = new User();         user.setName(name);         user.setMima(mima);         // 调用注册功能         ud.regist(user);         System.out.println("注册成功!");     } }

 

代码运行结果:

-------------欢迎光临-------------- 1.登录 2.注册 3.退出 请输入你的选择: 1 -------------登录界面(请先注册后再登录!)-------------- 请输入用户名: 232 请输入密码: 232 用户名或者密码有误,登录失败! -------------欢迎光临-------------- 1.登录 2.注册 3.退出 请输入你的选择: 2 -------------注册界面-------------- 请输入用户名: 1234 请输入密码: 1234 注册成功! -------------欢迎光临-------------- 1.登录 2.注册 3.退出 请输入你的选择: 1 -------------登录界面(请先注册后再登录!)-------------- 请输入用户名: 1234 请输入密码: 1234 登录成功!奖励你玩游戏。 你要玩吗?y/n y 请输入数据(1-100): 67 你猜的数据67小了 请输入数据(1-100): 87 你猜的数据87大了 请输入数据(1-100): 80 你猜的数据80大了 请输入数据(1-100): 78 你猜的数据78大了 请输入数据(1-100): 76 你猜的数据76大了 请输入数据(1-100): 74 你猜的数据74小了 请输入数据(1-100): 75 恭喜你,7次猜中了! 是否继续游戏?y/n n 谢谢使用,欢迎下次再来!

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3