ホームページ >Java >&#&チュートリアル >Javaで登録とログインシステムを実装する方法

Javaで登録とログインシステムを実装する方法

WBOY
WBOY転載
2023-04-24 23:31:132772ブラウズ

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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。