具体功能
本文实现了一个简单的学生管理系统,功能如下:
一、用户登录界面
1.登录
(1)用户名不存在时提示并要求重新输入(用户名需要判断1.是否存在 2.长度在3~15 3.字符是大小写英文或数字,且不能是纯数字)
(2)密码输入有误时提示并给三次机会重新输入,超过三次将用户锁定
(3)输入随机验证码(验证码由四位大小写字母和一位数字组成)
2.注册
(1)用户名唯一,否则重新输入
(2)密码需输入两次确认,两次输入不同则提示重新输入
(3)身份证号需要验证:1.长度18位 2.开头不为0 3.前17位全为数字 4.最后一位为数字或x或X
(4)手机号需要验证1.长度为11位 2.第一位不为0 3.字符均在0~9
3.忘记密码
(1)输入用户名、身份证号、手机号信息以确认用户身份
(2)重置密码时输入两次以确定密码
4.退出系统
(1)提示欢迎下次再见
5.显示所有用户
(1)显示用户所有信息(真正设计系统时可忽略此项内容,本系统添加是为了检查用户注册是否完成)
6.查询用户详细信息
(1)通过输入用户名和密码显示身份证号和手机号
(2)保护用户隐私
二、学生信息界面
1.添加学生
(1)学生id,需要保证唯一(可数字可字母)
(2)需要添加学生姓名,学生年龄,学生家庭地址
2.删除学生
(1)根据学生id删除学生信息
3.修改学生
(1)根据学生id找到对应学生,要求重新输入学生信息
4.查询学生
(1)以表格形式展现学生基本信息
5.退出系统
(1)返回上级界面,即返回用户登录界面
代码实现
本次代码实现用到了四个class类,分别为两个javabean,即student类和user类,以及两个实现类,学生信息界面和用户登录界面。
用到了很多ArrayList<>和输入输出的知识,但是目前还没有连接数据库,所以没有进行数据的缓存,每次需要重新输入数据。
Student.class代码如下:
package studentinfo;
public class Student {
private String id;
private String name;
private int age;
private String address;
public Student() {
super();
// TODO Auto-generated constructor stub
}
public Student(String id, String name, int age, String address) {
super();
this.id = id;
this.name = name;
this.age = age;
this.address = address;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
User.class代码如下:
package studentinfo;
public class User {
private String username;
private String password;
private String personId;
private String phoneNumber;
public User() {
super();
// TODO Auto-generated constructor stub
}
public User(String username, String password, String personId, String phoneNumber) {
super();
this.username = username;
this.password = password;
this.personId = personId;
this.phoneNumber = phoneNumber;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getPersonId() {
return personId;
}
public void setPersonId(String personId) {
this.personId = personId;
}
public String getPhoneNumber() {
return phoneNumber;
}
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}
}
StudentSystem.class代码如下:
package studentinfo;
import java.util.ArrayList;
import java.util.Scanner;
public class StudentSystem {
public static void startStudentSystem() {
ArrayList<Student> list = new ArrayList<>();
loop:while(true){
System.out.println("*********欢迎来到学生管理系统********");
System.out.println("1:添加学生");
System.out.println("2:删除学生");
System.out.println("3:修改学生");
System.out.println("4:查询学生");
System.out.println("5:退出系统");
System.out.println("请输入您的选择:");
Scanner sc = new Scanner(System.in);
int choose = sc.nextInt();
switch(choose) {
case 1:
addStudent(list);
break;
case 2:
deleteStudent(list);
break;
case 3:
updateStudent(list