java实现注册登录系统

 更新时间:2022年04月25日 11:01:16   作者:Carl_蔡先生  
这篇文章主要为大家详细介绍了java实现注册登录系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了java实现注册登录系统的具体代码,供大家参考,具体内容如下

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中的system.getProperty()的作用及使用方法

    Java中的system.getProperty()的作用及使用方法

    System.getProperty() 方法用于获取系统属性的值,该方法接受一个字符串参数,表示要获取的系统属性的名称,返回值为字符串类型,表示该属性的值,接下来通过本文给大家介绍Java中的system.getProperty()的作用及使用方法,感兴趣的朋友跟随小编一起看看吧
    2023-05-05
  • 将java程序打成jar包在cmd命令行下执行的方法

    将java程序打成jar包在cmd命令行下执行的方法

    这篇文章主要给大家介绍了关于将java程序打成jar包在cmd命令行下执行的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-01-01
  • MyBatis 多表操作的实现

    MyBatis 多表操作的实现

    这篇文章主要介绍了MyBatis 多表操作的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • SpringBoot项目集成Swagger和swagger-bootstrap-ui及常用注解解读

    SpringBoot项目集成Swagger和swagger-bootstrap-ui及常用注解解读

    这篇文章主要介绍了SpringBoot项目集成Swagger和swagger-bootstrap-ui及常用注解解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • Jmeter的接口测试详细步骤并实现业务闭环

    Jmeter的接口测试详细步骤并实现业务闭环

    这篇文章主要介绍了Jmeter的接口测试详细步骤并实现业务闭环,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-08-08
  • java中关于文本文件的读写方法实例总结

    java中关于文本文件的读写方法实例总结

    这篇文章主要介绍了java中关于文本文件的读写方法,实例总结了Java针对文本文件读写的几种常用方法,并对比了各个方法的优劣及特点,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-11-11
  • Spring中IOC和AOP的深入讲解

    Spring中IOC和AOP的深入讲解

    这篇文章主要给大家介绍了关于Spring中IOC和AOP的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • Spring Cloud Gateway全局通用异常处理的实现

    Spring Cloud Gateway全局通用异常处理的实现

    这篇文章主要介绍了Spring Cloud Gateway全局通用异常处理的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • Springboot项目平滑关闭及自动化关闭脚本

    Springboot项目平滑关闭及自动化关闭脚本

    这篇文章主要为大家详细介绍了Springboot项目平滑关闭及自动化关闭脚本,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-05-05
  • Spring Cloud Zuul添加过滤器过程解析

    Spring Cloud Zuul添加过滤器过程解析

    这篇文章主要介绍了Spring Cloud Zuul添加过滤器过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12

最新评论