基于Java 实现的简易登录-注册系统

  该项目适用于 学习完 基础的编程语法的同学进行进阶学习

  【1】基于Java实现简易的 注册 + 登录 系统

  非 数据库 实现!!!

  一、项目分析

  基础菜单栏:主界面、登录界面,注册界面

  类的划分:测试类、pojo类(存放账号和密码的构造方法)、信息存储类(专门存储用户注册的信息类【用于登录验证】)

  业务逻辑分析:该项目主要实现两个功能,

  一个是注册,用户点击注册,则会跳转到注册界面,输入要注册的账号密码,输入完成跳转到登录界面

  二是登录:用户会直接跳转到登录界面,通过已有的数据进行匹配登录

  二、界面设计

  这个大家自行设计

  基础菜单栏

  欢迎来到 xxx 系统

  1、注册

  2、登录

  3、退出

  请输入你的选择:

  登录界面

  欢迎来到 xxx 在线 系统

  请输入你的账号:

  aaa

  请输入你的密码:

  bbb

  恭喜你登录成功!!!

  …

  注册界面

  欢迎来到注册界面

  请输入你的账号:

  ada

  请输入你的密码:

  abc

  三、代码实现

  特别提醒:我这里存储数据用到的是列表(ArrayList),每次运行代码的时候,原有的数据就会保留,新注册的信息就会删除

  接下来我把几个比较重要的代码区域贴出来,供大家学习使用

  难点一:首先就是登录逻辑的判断

  import java.util.Scanner;

  import dataStored.LoginDataStored;

  public class Login {

  static LoginDataStored l=new LoginDataStored();//创建数据存储的对象

  public static void login() {

  Scanner in=new Scanner(System.in);

  String account = null;

  String password = null;

  String s;

  //初始化账户信息(这也是列表(ArrayList)的弊端,每次使用必须进行初始化的操作)

  l.init();

  do {

  System.out.println(欢迎来到 xxx 在线 系统);

  //菜单的使用

  System.out.println(请输入你的账号:);

  account=in.next();

  System.out.println(请输入你的密码:);

  password=in.next();

  //两层判断,其实这里还可以继续扩展,对用户注册的账户进行判断,是否有重复的

  //还可以继续扩展,对密码的茬高度进行长度限制,提高安全性

  for(int i=0;il.list.size();i++) p=

  if(account.equals(l.list.get(i).getAccount())) {

  if(password.equals(l.list.get(i).getPassword())) {

  System.out.println(恭喜你登录成功!!!);

  System.out.println(..............);

  //程序到这里就介结束了,我也就没写了,不然会一直重复登录

  s=in.next();// 用于暂停。。。

  }else {

  System.out.println(密码错误,请重新尝试);

  }

  }else {

  System.out.println(账户错误,请重新输入);

  }

  }while(true);//账号密码输不对,就一直输入

  }

  }

  难点二:用户注册与登录的对象,设置有参和无参的构造方法

  public class SignIn {

  private String account;

  private String password;

  public String getAccount() {

  return account;

  }

  public void setAccount(String account) {

  this.account = account;

  }

  public String getPassword() {

  return password;

  }

  public void setPassword(String password) {

  this.password = password;

  }

  public SignIn(String account, String password) { //有参数的构造方法

  super();

  this.account = account;

  this.password = password;

  }

  public SignIn() {}

  }

  难点三: 使用列表实现用户的信息注册

  import java.util.*;

  import Login.Login;

  import pojo.SignIn;

  public class LoginDataStored {

  public static SignIn s=new SignIn();//创建SignIn 对象,用于实现用户注册信息的存储,

  public static Listlist=new ArrayList();//通过列表存储用户信息

  public static Scanner in=new Scanner(System.in);

  static Login ll=new Login();//创建登录界面的对象,用于界面跳转

  public void init() {//初始化账号信息

  list.add(new SignIn(aaa,bbb));

  list.add(new SignIn(bbb,ccc));

  }

  //注册界面,写在这里主要是方面添加信息

  public static void Register() {

  info(欢迎来到注册界面);

  String account=;

  String password=;

  System.out.println(请输入你的账号:);

  account=in.next();

  System.out.println(请输入你的密码:);

  password=in.next();

  s=new SignIn(account,password);

  list.add(s);

  //返回登录界面

  ll.login();

  }

  //封装输入流

  public static void info(String str) {

  System.out.println(str);

  }

  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值