2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 学籍(档案)管理系统的开发

学籍(档案)管理系统的开发

时间:2022-10-22 07:55:28

相关推荐

学籍(档案)管理系统的开发

学籍(档案)管理系统的开发

1.在eclipse中创建一个项目SMS,建立User(用户)类、DataProcessing(数据处理)类和Main类,再建立管理员(Administrator)和学生(Student)两个用户类,并且继承User为User的子类(采用super关键字)。

2.用Hashtable数据结构创建用户,有管理员(Administrator)和学生(Student)两类。

3.登录成功根据不同的身份显示不同的功能界面,用showMenu()函数

管理员功能设计

包括添加新用户,删除用户,列出用户,修改用户信息和修改个人登录密码

普通用户(即学生)功能设计

包括修改个人信息,修改个人登录密码

在登录以及修改个人密码时会有一个判断用户名与密码是否匹配的过程算法

系统效果截图

登录界面

登录异常界面(密码错误或用户不存在)

管理员界面

操作后用户信息

普通用户(学生)界面

附完整代码

package studentManagementSystem;import java.util.*;public class Administrator extends User {private Scanner scanner;public Administrator(String id,String password,String role,String name,String grade){super(id,password,role,name,grade);}public void showMenu(){System.out.println("*********欢迎进入管理员界面********");System.out.println("1.新增用户\n2.删除用户\n3.修改用户\n4.列出用户\n5.修改(本人)密码\n6.退出");System.out.println("请选择菜单:");manageMent();}public void manageMent(){scanner = new Scanner(System.in);int choice=scanner.nextInt();switch(choice){case 1:Add();break;case 2:Delete();break;case 3:Alter();break;case 4:listUser();break;case 5:alterPassword();break;case 6:System.out.println("系统退出,谢谢使用!");System.exit(0);default:System.out.println("error!");}showMenu();}}

package studentManagementSystem;import java.util.*;public class Student extends User {private Scanner scanner;public Student(String id,String password,String role,String name,String grade){super(id,password,role,name,grade);}public void showMenu(){System.out.println("*********欢迎进入学生界面********");System.out.println("1.列出(本人)信息\n2.修改(本人)密码\n3.退出");System.out.println("请选择菜单:");manageMent();}public void manageMent(){scanner = new Scanner(System.in);int choice=scanner.nextInt();switch(choice){case 1:listSelfInformation();break;case 2:alterPassword();break;case 3:System.out.println("系统退出,谢谢使用!");System.exit(0);default:System.out.println("error!");}showMenu();}}

package studentManagementSystem;import java.util.*;public class DataProcessing {static Hashtable<String,User>users;static{users = new Hashtable<String, User>();users.put("001", new Student("001","123","student","Tina","301"));users.put("002", new Student("002","123","student","Candy","302"));users.put("101", new Administrator("101","123","administrator","Sunny","301"));}public static User searchUser(String id){if (users.containsKey(id)) {return users.get(id);}return null;}public static User search(String id, String password){if (users.containsKey(id)) {User temp =users.get(id);if ((temp.getPassword()).equals(password))return temp;}return null;}public static Enumeration<User> getAllUser(){Enumeration<User> e = users.elements();return e;}public static boolean update(String id, String password, String role,String name,String grade){User user;if (users.containsKey(id)) {if (role.equalsIgnoreCase("administrator"))user = new Administrator(id,password, role,name,grade);elseuser = new Student(id,password, role,name,grade);users.put(id,user);return true;}elsereturn false;}public static boolean insert(String id, String password, String role,String name,String grade){User user;if (users.containsKey(id))return false;else{if (role.equalsIgnoreCase("administrator"))user = new Administrator(id,password, role,name,grade);elseuser = new Student(id,password, role,name,grade);users.put(id, user);return true;}}public static boolean delete(String id){if (users.containsKey(id)){users.remove(id);return true;}elsereturn false;}}

package studentManagementSystem;import java.util.*;public abstract class User {private String id;private String password;private String role;private String name;private String grade;User(String id,String password,String role,String name,String grade){this.id=id;this.password=password;this.role=role;this.name=name;this.grade=grade;}public String getID() {return id;}public void setID(String id){this.id=id;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public String getRole() {return role;}public void setRole(String role) {this.role = role;}public String getName() {return name;}public void setNamae(String name){this.name=name;}public String getGrade() {return grade;}public void setGrade(String grade){this.grade=grade;}public abstract void showMenu();public abstract void manageMent();Scanner scanner=new Scanner(System.in);public void Add(){System.out.println("请输入学号:");String id=scanner.next();System.out.println("请输入密码:");String password=scanner.next();System.out.println("请输入身份:");String role=scanner.next();System.out.println("请输入姓名:");String name=scanner.next();System.out.println("请输入班级:");String grade=scanner.next();DataProcessing.insert(id, password, role, name, grade);System.out.println("新增用户成功!");}public void Delete(){System.out.println("请输入学号:");String id=scanner.next();DataProcessing.delete(id);System.out.println("删除用户成功!");}public void Alter(){System.out.println("请输入学号:");String id=scanner.next();System.out.println("请输入密码:");String password=scanner.next();System.out.println("请输入身份:");String role=scanner.next();System.out.println("请输入姓名:");String name=scanner.next();System.out.println("请输入班级:");String grade=scanner.next();DataProcessing.update(id, password, role, name, grade);System.out.println("修改成功!");}public void listUser(){Enumeration<User> e= DataProcessing.getAllUser();User user;while( e.hasMoreElements() ){user=e.nextElement();System.out.println("ID:"+user.getID()+"\t Password:" +user.getPassword()+"\t Role:" +user.getRole()+"\t Name:"+user.getName()+"\t Grade:"+user.getGrade());}}public void alterPassword(){System.out.println("请输入密码:");String password=scanner.next();User user=DataProcessing.search(getID(),password);if(user==null)System.out.println("密码错误!");elseSystem.out.println("请输入修改密码:");String ppassword=scanner.next();DataProcessing.update(getID(), ppassword, getRole(),getName(),getGrade());changeSelfInfo(ppassword);}public void listSelfInformation(){System.out.println("ID:"+getID()+"\t Password:" +getPassword()+"\t Role:" +getRole()+"\t Name:"+getName()+"\t Grade:"+getGrade());}public boolean changeSelfInfo(String password){//写用户信息到存储if (DataProcessing.update(id, password, role,name,grade )){this.password=password;System.out.println("修改成功!");return true;}elsereturn false;}}

package studentManagementSystem;import java.util.*;public class Main {private static Scanner scanner;public static void main(String[]args){System.out.println("**************欢迎进入学籍管理系统************\n"+"1.登录\n2.退出\n"+"**************请选择菜单**************\n");String id,password;scanner = new Scanner(System.in);int choice=scanner.nextInt();switch(choice){case 1:System.out.println("请输入学号:");id=scanner.next();System.out.println("请输入密码:");password=scanner.next();User user=DataProcessing.search(id,password);if(user==null)System.out.println("学号或密码错误!");elseuser.showMenu();break;case 2:System.out.println("系统退出,谢谢使用!");break;default:System.out.println("error!");}}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。