溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

java如何實(shí)現(xiàn)注冊登錄系統(tǒng)

發(fā)布時間:2022-04-25 13:56:41 來源:億速云 閱讀:528 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容介紹了“java如何實(shí)現(xiàn)注冊登錄系統(tǒng)”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

1、創(chuàng)建菜單,注冊,登錄,退出

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.    注冊登錄系統(tǒng)
    //1.    創(chuàng)建菜單,注冊,登錄,退出
    public static void MySQLmenu() {
        System.out.println("***************************");
        System.out.println("*****MySQL注冊登錄系統(tǒng)*****");
        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("賬號或密碼錯誤,請確認(rèn)賬號密碼");
                    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("請輸入選擇項(xiàng):");
            int n=sc.nextInt();
            switch(n) {
            case 1:
                MySQLregister();
                break;
            case 2:
                Oder();
                System.out.println("輸入次數(shù)達(dá)到上限,休眠30秒");
                Thread.sleep(30000);
                break;
            case 3:
                System.out.println("已退出系統(tǒng)");
                flag=false;
                break;
            default:
                System.out.println("輸入異常!請重新輸入");
            }
        }
    }
}

“java如何實(shí)現(xiàn)注冊登錄系統(tǒng)”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI