初始选择身份界面
import java.util.Scanner;
public class InitialUI {
public static User UI() {
System.out.println();
System.out.println();
System.out.println();
System.out.println("\t\t\t---选择身份界面---\n");
System.out.println("\t\t\t 1.学生");
System.out.println("\t\t\t 2.管理员");
System.out.println("\t\t\t 3.超级用户");
System.out.println("\t\t\t 0.退出");
System.out.println(">>> 0级菜单");
System.out.println("请选择你的身份:");
Scanner s = new Scanner(System.in);
int num = s.nextInt();
switch(num) {
case 1:
return new Student();
case 2:
return new Manager();
case 3:
return new SuperUser();
case 0:
System.out.println("感谢使用本系统!");
return null;
}
return null;
}
}
定义了学生、管理员、超级用户共有属性的父类
public class Person {
private String id;
private String name;
private int age;
private String sex;
private String nation;
private String phone;
private String idNum;
//构造器
public Person() {
super();
}
public Person(String id, String name, int age, String sex, String nation, String phone, String idNum) {
super();
this.id = id;
this.name = name;
this.age = age;
this.sex = sex;
this.nation = nation;
this.phone = phone;
this.idNum = idNum;
}
//set and get
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 getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getNation() {
return nation;
}
public void setNation(String nation) {
this.nation = nation;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getIdNum() {
return idNum;
}
public void setIdNum(String idNum) {
this.idNum = idNum;
}
}
学生、管理员、超级用户都实现了的接口,包含界面和登陆验证的抽象方法
public interface User {
boolean login();
void UI();
}
验证学生身份后进入学生界面
import java.util.Scanner;
import java.util.Vector;
public class Student extends Person implements User{
private String birPlace;
private String address;
String type = "1";
//构造器
public Student() {
super();
}
public Student(String id, String name, int age, String sex, String nation, String phone, String idNum, String birPlace, String address) {
super(id, name, age, sex, nation, phone, idNum);
this.birPlace = birPlace;
this.address = address;
}
//set and get
public String getBirPlace() {
return birPlace;
}
public void setBirPlace(String birPlace) {
this.birPlace = birPlace;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
//重写自定义方法
@Override
public boolean login() {
final int count = 1;
Scanner s = new Scanner(System.in);
System.out.println("请输入学号:");
String userID = new String();
userID = s.nextLine();
Vector v = new Vector(3);
for(int i = 3; i >= count; i--) {
String pw = new String();
System.out.println("请输入密码:");
pw = s.nextLine();
try {
v = DataBaseOperation.login(userID);
if(v == null) {
return false;
}else {
if(!((pw.equals(v.get(1)) && type.equals(v.get(2)))) && (i < count)) {
return false;
}else if(pw.equals(v.get(1)) && type.equals(v.get(2))){
return true;
}else {
System.out.println("密码错误");
System.out.println("你还有" + (i - 1) + "次机会!");
}
}
}catch(Exception e) {
e.printStackTrace();
}
}
return false;
}
@Override
public void UI() {
boolean isExit = true;
while(isExit) {
System.out.println();
System.out.println();
System.out.println();
System.out.println("\t\t\t欢迎进入学生信息管理系统!\n");
System.out.println("\t\t\t 1.查询学生记录");
System.out.println("\t\t\t 2.学生情况分类统计");
System.out.println("\t\t\t 3.密码修改");
System.out.println("\t\t\t 0.退出");
System.out.println(">>> 1级菜单");
Scanner s = new Scanner(System.in);
int num = s.nextInt();
switch(num) {
case 1:
StudentMethod.nextStuUI1();
break;
case 2:
StudentMethod.nextStuUI2();
break;
case 3:
StudentMethod.changePw();
break;
case 0:
System.out.println("感谢使用本系统!");
isExit = false;
}
}
}
public String toString() {
return getId() + "\t" + getName() + "\t" + getAge() + "\t" + getSex() + "\t" + getNation() + "\t" + getPhone() + "\t" + getIdNum() + "\t" + getBirPlace() + "\t" + getAddress();
}
}
验证管理员身份成功后进入管理员界面
import java.util.Scanner;
import java.util.Vector;
public class Manager extends Person implements User{
private String level;
String type = "2";
//构造器
public Manager() {
super();
}
public Manager(String id, String name, int age, String sex, String nation, String phone, String idNum, String level) {
super(id, name, age, sex, nation, phone, idNum);
this.level = level;
}
//set and get
public String getLevel() {
return level;
}
public void setLevel(String level) {
this.level = level;
}
//重写自定义方法
@Override
public boolean login() {
final int count = 1;
Scanner s = new Scanner(System.in);
System.out.println("请输入工号:");
String userID = new String();
userID = s.nextLine();
Vector v = new Vector(3);
for(int i = 3; i >= count; i--) {
String pw = new String();
System.out.println("请输入密码:");
pw = s.nextLine();
try {
v = DataBaseOperation.login(userID);
if(v == null) {
return false;
}else {
if(!((pw.equals(v.get(1)) && type.equals(v.get(2)))) && (i < count)) {
return false;
}else if(pw.equals(v.get(1)) && type.equals(v.get(2))){
return true;
}else {
System.out.println("密码错误");
System.out.println("你还有" + (i - 1) + "次机会!");
}
}
}catch(Exception e) {
e.printStackTrace();
}
}
return false;
}
@Override
public void UI() {
boolean isExit = true;
while(isExit) {
System.out.println();
System.out.println();
System.out.println();
System.out.println("\t\t\t欢迎进入学生信息管理系统!\n");
System.out.println("\t\t\t 1.查询学生记录");
System.out.println("\t\t\t 2.学生情况分类统计");
System.out.println("\t\t\t 3.密码修改");
System.out.println("\t\t\t 4.查询管理员记录");
System.out.println("\t\t\t 5.管理员情况分类统计");
System.out.println("\t\t\t 6.添加新学生");
System.out.println("\t\t\t 7.删除学生");
System.out.println("\t\t\t 8.修改学生");
System.out.println("\t\t\t 0.退出");
System.out.println(">>> 1级菜单");
Scanner s = new Scanner(System.in);
int num = s.nextInt();
switch(num) {
case 1:
ManagerMethod.nextMngUI1(num);
break;
case 2:
ManagerMethod.nextMngUI2(num);
break;
case 3:
ManagerMethod.changePw();
break;
case 4:
ManagerMethod.nextMngUI1(num);
break;
case 5:
ManagerMethod.nextMngUI2(num);
break;
case 6:
ManagerMethod.addInfo();
break;
case 7:
ManagerMethod.deleteInfo();
break;
case 8:
ManagerMethod.updateInfo();
break;
case 0:
System.out.println("感谢使用本系统!");
isExit = false;
}
}
}
public String toString() {
return getId() + "\t" + getName() + "\t" + getAge() + "\t" + getSex() + "\t" + getNation() + "\t" + getPhone() + "\t" + getIdNum() + "\t" + getLevel();
}
}
验证超级用户身份成功后进入管理员界面
import java.util.Scanner;
import java.util.Vector;
public class SuperUser extends Manager implements User{
String type = "3";
//构造器
public SuperUser() {
super();
}
public SuperUser(String id, String name, int age, String sex, String nation, String phone, String idNum, String level) {
super(id, name, age, sex, nation, phone, idNum, level);
}
//重写自定义方法
@Override
public boolean login() {
final int count = 1;
Scanner s = new Scanner(System.in);
System.out.println("请输入账号:");
String userID = new String();
userID = s.nextLine();
Vector v = new Vector(3);
for(int i = 3; i >= count; i--) {
String pw = new String();
System.out.println("请输入密码:");
pw = s.nextLine();
try {
v = DataBaseOperation.login(userID);
if(v == null) {
return false;
}else {
if(!((pw.equals(v.get(1)) && type.equals(v.get(2)))) && (i < count)) {
return false;
}else if(pw.equals(v.get(1)) && type.equals(v.get(2))){
return true;
}else {
System.out.println("密码错误");
System.out.println("你还有" + (i - 1) + "次机会!");
}
}
}catch(Exception e) {
e.printStackTrace();
}
}
return false;
}
@Override
public void UI() {
boolean isExit = true;
while