• 技术文章 >Java >java教程

    java如何实现注册登录系统

    WBOYWBOY2023-04-24 23:31:13转载42

    1、创建菜单,注册,登录,退出

    2、注册模块:

    a) 通过键盘输入用户名,密码
    b) 保存用户名密码到user.txt文件(包含用户名和密码)
    c) 注册成功

    3、登录模块

    a) 通过键盘输入用户名和密码
    b) 判断(超过三次提示过多错误,需要休眠30秒)
    c) 登陆成功

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.util.Properties;
    import java.util.Scanner;
    
    class TestRegex{
        public boolean isUser(String user) {
            String regex="[1-9][0-9]{4,9}";
            boolean b=user.matches(regex);
            return b;
        }
        public boolean isMiMa(String mm) {
            String regex="\\w+(\\.*\\w)";
            boolean b=mm.matches(regex);
            return b;
        }
    }
    public class MySQLregisterTest{
        //1.    注册登录系统
        //1.    创建菜单,注册,登录,退出
        public static void MySQLmenu() {
            System.out.println("***************************");
            System.out.println("*****MySQL注册登录系统*****");
            System.out.println("**1.注册");
            System.out.println("**2.登录");
            System.out.println("**3.退出");
        }
        //2.    注册模块:
        //a)    通过键盘输入用户名,密码
        //b)    保存用户名密码到user.txt文件(包含用户名和密码)
        //c)    注册成功
        public static void MySQLregister() throws IOException {
            TestRegex tr=new TestRegex();
            File f=new File("user.txt");
    
            Scanner sc=new Scanner(System.in);
            System.out.println("欢迎来到注册界面!");
            System.out.println("请输入用户名!");
            String s=sc.next();
            boolean bu=tr.isUser(s);
            FileInputStream fis=new FileInputStream("user.txt");
            Properties pro=new Properties();
            pro.load(fis);
            String user=pro.getProperty("user");
            String pass=pro.getProperty("pass");
            if(bu==false&&user.equals(s)) {
                System.out.println("账号注册失败");
            }else {
                FileOutputStream fos=new FileOutputStream(f,true);
                byte[] bye=new byte[512];
                int len=0;
                fos.write(("user="+s+"\r\n").getBytes());
                fos.flush();
                fos.close();
                fis.close();
                System.out.println("注册成功");
            }
            System.out.println("请输入密码!");
            String st=sc.next();
            boolean bm=tr.isMiMa(st);
            if(bm==false&&pass.equals(st)) {
                System.out.println("密码注册失败");
            }else {
                FileOutputStream fos=new FileOutputStream(f,true);
                byte[] bye=new byte[512];
                int len=0;
                fos.write(("pass="+st+"\r\n").getBytes());
                fos.flush();
                fos.close();
                fis.close();
                System.out.println("账号注册成功");
            }
        }
        //3.     登录模块
        //a)    通过键盘输入用户名和密码
        
        public static boolean Login() throws IOException{
            boolean flag=false;
            Scanner sc=new Scanner(System.in);
            System.out.println("请输入用户名:");
            String s=sc.next();
            FileInputStream fis=new FileInputStream("user.txt");
            Properties pro=new Properties();
            pro.load(fis);
            String user=pro.getProperty("user");
            String pass=pro.getProperty("pass");
            if(s.equals(user)) {
                System.out.println("请输入密码:");
            }
            String ms=sc.next();
            if(ms.equals(pass)) {
                System.out.println("登录成功");
                flag=true;
            }
            return flag;
        }
        //b)    判断(超过三次提示过多错误,需要休眠30秒)
        //c)    登陆成功
        public static void Oder() {
            int n = 1;
            abc: while (n <4) {
                try {
                    boolean flag = Login();
                    if (flag == false) {
                        n++;
                    } else {
                        System.out.println("账号或密码错误,请确认账号密码");
                        n = 4;
                        break abc;
                    }
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
        }
    
        public static void main(String[] args) throws IOException, Exception {
            boolean flag=true;
            while(flag) {
                MySQLmenu();
                Scanner sc=new Scanner(System.in);
                System.out.println("请输入选择项:");
                int n=sc.nextInt();
                switch(n) {
                case 1:
                    MySQLregister();
                    break;
                case 2:
                    Oder();
                    System.out.println("输入次数达到上限,休眠30秒");
                    Thread.sleep(30000);
                    break;
                case 3:
                    System.out.println("已退出系统");
                    flag=false;
                    break;
                default:
                    System.out.println("输入异常!请重新输入");
                }
            }
        }
    }

    以上就是java如何实现注册登录系统的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:亿速云,如有侵犯,请联系admin@php.cn删除
    专题推荐:Java
    上一篇:Java中TypeReference的使用方法 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 如何避免JAVA中简单的for循环出现异常?• java怎么随机打乱数组顺序• Java如何使用Freemarker实现页面静态化?• Java中如何使用数组?• 如何在Java中将二维数组转换为一维数组
    1/1

    PHP中文网