目录

前言

一、环境搭建

二、功能实现

1.学生信息类的创建

2.学生信息的添加功能

3.学生信息的删除功能

4.学生信息的修改功能 

5.学生信息的查看功能

 三、主类的调用

1.界面的搭建

2.学生端和教师端

3.系统和功能的选择

总结


前言

JAVA实现的学生信息管理系统(包含教师端和学生端)

教师端有登录过程,功能包括对学生信息的增删改查

学生端无登录过程,功能只包括查看信息


一、环境搭建

  1. 在idea创建一个工程文件,在工程文件下创建一个model模块,在model模块下载创建三个package包分别用来存放(Management)管理信息包、(function)功能包、(information)学生信息对象类,再在三个包中创建如下图所示文件
  2. 容器选择:因为本次使用的是自己创建的Student类并且信息数量不确定,所以选择集合作为Student类的容器

二、功能实现

1.学生信息类的创建

为了防止属性不能被外类随意访问,因此采用private对学生类中的属性进行修饰并且进行创建set、get方法以便于调用属性,再创建打印数据方法,方便数据打印,代码如下:

public class Student {private String id;private String name;private String college;private String major;public Student() {}public Student(String id, String name, String college, String major) {this.id = id;this.name = name;this.college = college;this.major = major;}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 String getCollege() {return college;}public void setCollege(String college) {this.college = college;}public String getMajor() {return major;}public void setMajor(String major) {this.major = major;}public void information_printf() {System.out.printf("%-16s%-13s" + "\t" + "%-12s" + "\t" + "%s\n", getId(), getName(), getCollege(), getMajor());}
}

2.学生信息的添加功能

在Addtion添加类中,先创建集合容器用来存放数据,并且键盘录入的数据(使用Scanner()方法),再进行对输入的判断是否合法,最后将录入的数据存入集合中,具体实现方法如下:

    public Student Add_information(ArrayList<Student> newList) {Scanner sc = new Scanner(System.in);Student stu = new Student();System.out.println("请输入学生学号:");//学生学号信息输入检查add_check_id(newList, sc, stu);System.out.println("请输入学生姓名:");String name = sc.next();stu.setName(name);System.out.println("请输入学生所在学院(4-6字):");//学生学院信息输入检查add_check_college(sc, stu);//学生专业班级信息输入检查System.out.println("请输入学生专业班级(4-8字):");add_check_major(sc, stu);return stu;}

实现效果如图:

3.学生信息的删除功能

在Delete删除类中,先创建集合容器用来存放数据,并且键盘录入的数据(使用Scanner()方法),再进行信息的判断是否存在,最后将需要删除的信息从集合中删除,具体实现方法如下:

public ArrayList<Student> Delete_information(ArrayList<Student> newList) {Scanner sc = new Scanner(System.in);System.out.println("请输入要删除的学生的学号:");while (true) {String id = sc.next();if (getList_id(newList, id)) {System.out.println("学生信息删除成功!");break;}System.out.println("该学生信息不存在,请重新输入:");}return newList;}

实现效果如图:

4.学生信息的修改功能

在Modify修改类中,先创建集合容器用来存放数据,并且键盘录入的数据(使用Scanner()方法),再进行信息的判断是否存在,再将新录入的数据代替之前的数据,最后将新的数据重新添加至集合中,具体实现方法如下:

public ArrayList<Student> Modify_information(ArrayList<Student> newList) {Scanner sc = new Scanner(System.in);System.out.println("请输入要修改的学生的学号:");while (true) {String id = sc.next();if (getList_id(newList, id)) {System.out.println("学生信息修改成功!");break;}System.out.println("该学生信息不存在,请重新输入:");}return newList;}

 实现效果如图:

5.学生信息的查看功能

在View查看类中,先创建集合容器用来存放数据,利用for循环对集合遍历并且调用Student类中的information_printf()方法打印出所有学生信息,具体实现方法如下:

public void View_information(ArrayList<Student> newList) {for (int i = 0; i < newList.size(); i++) {Student s = newList.get(i);s.information_printf();}}

 实现效果如图:

三、主类的调用

1.界面的搭建

使用System.out.println()方法输出界面,具体实现方法如下:

//选择登录系统界面
System.out.println("----------学生信息管理系统----------");
System.out.println("* 1、学生登录  2、教师登录  3、退出  *");
System.out.println("---------------------------------");//学生端界面
System.out.println("----------学生信息管理系统----------");
System.out.println("*     1、查看信息      2、返回     *");
System.out.println("---------------------------------");//教师登录界面
System.out.println("----------学生信息管理系统----------");
System.out.println("*1、添加信息  2、删除信息  3、修改信息*");
System.out.println("*4、查看信息  5、返回              *");
System.out.println("---------------------------------");

2.学生端和教师端

学生端只能查看学生信息,教师端可以对信息进行增加、删除、修改、查看四个功能,并且登录教师端需要输入用户名和密码;先使用Scanner()方法在控制台接收用户键盘录入的数据,再将输入的数据通过对字符串的判断实现是否登陆成功。具体实现方法如下:

//教师端登录
public static void Login_teacher(ArrayList<Student> list) {Scanner sc1 = new Scanner(System.in);Scanner sc2 = new Scanner(System.in);//已知用户名密码String name = "Login";String password = "123456";//获取用户名密码while (true) {System.out.println("请输入用户名:");String username = sc1.next();System.out.println("请输入密码:");String user_password = sc2.next();if (name.equals(username) && password.equals(user_password)) {System.out.println("登陆成功");Management_teacher(list);break;} else {System.out.println("用户名或密码错误,请重新输入:");}}}

 实现效果如图:

3.系统和功能的选择

先使用Scanner()方法在控制台接收用户键盘录入的数据,再将输入的数据,通过switch(int flag) case :方法进行判断选择对应的系统或对应的功能,具体实现方法如下图:

//登陆系统选择
Scanner sc = new Scanner(System.in);wc:while (true) {System.out.println("----------学生信息管理系统----------");System.out.println("* 1、学生登录  2、教师登录  3、退出  *");System.out.println("---------------------------------");int flag = sc.nextInt();switch (flag) {case 1:Management_student(list);break;case 2:Login_teacher(list);break;case 3:break wc;default:System.out.println("输入有误,请重新输入:");break;}}//学生功能选择
Scanner sc = new Scanner(System.in);wc2:while (true) {System.out.println("----------学生信息管理系统----------");System.out.println("*     1、查看信息      2、返回     *");System.out.println("---------------------------------");int flags = sc.nextInt();switch (flags) {case 1:view_Student_information(list);break;case 2:break wc2;}}//教师端功能选择
Scanner sc = new Scanner(System.in);wc:while (true) {System.out.println("----------学生信息管理系统----------");System.out.println("*1、添加信息  2、删除信息  3、修改信息*");System.out.println("*4、查看信息  5、返回              *");System.out.println("---------------------------------");int flag = sc.nextInt();switch (flag) {case 1://学生信息的添加add_Student_information(list);break;case 2://学生信息的删除delete_Student_information(list);break;case 3://学生信息的修改modify_Student_information(list);break;case 4://学生信息的查询view_Student_information(list);break;case 5:break wc;default:System.out.println("输入有误,请重新输入:");break;}}

总结

以上就是我实现学生信息管理系统的方案,本文仅仅介绍了实现方案及制作流程,仅供参考,若有问题请帮忙留言指出,欢迎交流学习。

需要所有源文件可以下载

JAVA实现的学生信息管理系统-Java文档类资源-CSDN文库https://download.csdn.net/download/huihu__/85208959

【JAVA】学生信息管理系统相关推荐

  1. JAVA 学生信息管理系统

    java 学生信息管理系统 主要使用的增删改查操作 首先,需要先建一个文件(点击左上角File,选择第一个New里的第一个Java Project) 然后再建一个Javabean包,在这个包里新建一个 ...

  2. JAVA学生信息管理系统IO流版

    JAVA学生信息管理系统IO流版 1. Student类 public class Student implements Serializable{//学号private int sid;//姓名pr ...

  3. java学生信息管理系统(GUI+mysql数据库)

    java学生信息管理系统+GUI界面布局+mysql数据库 代码已经更新!,重新设计了UI界面,代码之间的逻辑更加清晰 新的代码不需要手动建立数据库和表,全部由程序自动执行 用户名和密码为你数据库的用 ...

  4. JAVA学生信息管理系统课程设计简介以及开发源码介绍

    java学生信息管理系统简介 1.系统简介 主要实现功能:登录,注册,增加,删除,更改,查找,条件查找,查看在线账号,更改密码. 涉及到内容:java mysql8.0 Navicat 可视化工具 2 ...

  5. java考勤管理系统源码java学生考勤请假系统java学生考勤管理系统 java考勤系统java学生信息管理系统java学生管理系统

    java考勤管理系统源码java学生考勤请假系统java学生考勤管理系统 java考勤系统java学生信息管理系统java学生管理系统 public Swingtest002() {// 设置标题se ...

  6. 基于JAVA学生信息管理系统录像演示2021计算机毕业设计源码+系统+数据库+lw文档+部署

    基于JAVA学生信息管理系统录像演示2021计算机毕业设计源码+系统+数据库+lw文档+部署 基于JAVA学生信息管理系统录像演示2021计算机毕业设计源码+系统+数据库+lw文档+部署 本源码技术栈 ...

  7. Java学生信息管理系统——管理员登录模块(简单易上手)

    前言 这一篇是用来记录我编写学生信息管理系统时实现登录操作的过程,这是学生信息管理系统的第一个模块,之后我还会陆续将其它模块分享出来. 其它章节 ------------------------> ...

  8. Java 学生信息管理系统 (mysql版)

    引言:如果需要定制类似的图形界面版的Java 管理系统,比如控制台版的,Java web版的,ssm版,开发工具为idea和eclipse.myEclipse的,提供远程服务,需要源码,或者需要项目实 ...

  9. Java学生信息管理系统(增、删、改、查)

    学生信息管理系统 1.学生信息系统功能: (1.)添加学生信息 (2.)删除学生信息 (3.)修改学生信息 (4.)查询学生信息 2.程序运行结果图 3.该程序分为两个类: (1.)Student类 ...

  10. Java学生信息管理系统源码

    学生信息管理系统 功能说明 学生信息管理,包括学生.班级.院系.课程.成绩等的管理. 本程序仅供学习食用. 工程环境 JDK IntelliJ IDEA MySQL 运行说明 1.安装JDK. 2.导 ...

最新文章

  1. AWS Device Farm介绍及Appium踩过的坑
  2. 计算C#程序执行时间
  3. 云原生时代下,容器安全的“四个挑战”和“两个关键”
  4. php如何去除侧栏,设置内容区侧栏
  5. java 数组赋值_自学JAVA每日记录(10)-欢迎指点欢迎共勉
  6. Flink on Zeppelin (4) - 机器学习篇
  7. 官方认证:软件及信息技术从业者为新生代农民工
  8. phpcms解决(sql数据库数据与页面显示结果)调用的栏目数据条数不一致问题 - 总结篇
  9. 【UML关系(泛化、实现、依赖、关联(聚合,组合))】
  10. JavaScript 实现:输出斐波那契数列
  11. RayData大数据可视化教程(1)——软件使用和材质渲染基础
  12. 6万辆自动驾驶小车将入市!图扑软件构建车联网系统
  13. AutoCAD Plant 3d管道设计基础到中高级进阶视频教程
  14. H5+CSS3面试题
  15. 品牌制造商做电子商务的成本结构分析
  16. 猿代码浅谈Python|猿代码科技
  17. 使用背景优先级的测地显著性检测(Geodesic Saliency Using Background Priors)
  18. Excel下拉框设置多选
  19. 计算机视觉中low-level feature和high level feature的理解
  20. Word输入的英文字体被默认为宋体并无法修改的解决办法

热门文章

  1. 红米note5linux刷机包_红米Note5刷机包 MIUI11
  2. 计算机应用c 简历,计算机应用专业的简历模板
  3. 全志(Allwinner) A40i使用千兆网的配置
  4. Oracle 批量修改字段长度
  5. delphi利用bing翻译API做的多国语言翻译软件
  6. Java初学者项目考核–小说管理系统
  7. 安卓扫描周围基站信息,获取邻小区频段频点
  8. JavaScript等于 == 与 恒等于 === 的区别
  9. 2个网卡配置相同ip 华为交换机_华为交换机如何配置管理IP地址、如何修改管理IP地址...
  10. 中职组“网络空间安全赛项”linux安全加固