Java学生成绩管理系统(说明书)(共40页).doc
《Java学生成绩管理系统(说明书)(共40页).doc》由会员分享,可在线阅读,更多相关《Java学生成绩管理系统(说明书)(共40页).doc(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上目 录 . 设计题目.22 .设计目的.2 .设计分析.2 3.3可行性研究.2 3.3需求分析.2 3.3需求分析.24. 概念结构设计.35. 系统总体设计.4466. 具体功能实现.7.108.10.1314177. 总结.178. 参考文献.189. 附录.18一.设计题目 学生成绩管理系统 二.设计目的 巩固和加深学生对高级语言程序设计课程的基本知识的理解和掌握,掌握java语言编程和程序调试的基本技能,利用java语言进行基本的软件设计,提高运用java语言解决实际问题的能力。 三设计分析3.1可行性研究利用面向对象的JAVA语言来进行系统开发,可以很方便
2、的根据实际定义各个所需要的对象,并对这些对象进行操作。同时由于本系统是在控制台进行各种用户操作,所以需要及时验证用户的输入是否正确,并进行相应的提示,这些需求和功能在目前情况下利用所学知识完全可以实现。并且本系统采用文件来存储数据,操作比较简单,但是在一定程度上限制数据量和系统的运行速度。该学生成绩管理系统管理系统是在Windows 7系统下进行开发和运行的,这些系统目前已经比较普及,用户在该系统中可以方便的进行各种操作,实现预期的目的。但是受控制台的限制,使得用户的操作不是很方便,这需要下一步的系统改进和升级,但是本系统仍然是可以正常运行和使用的 3.2 问题陈述此项目是学生成绩管理系统,管
3、理员对学生的成绩进行管理和分析。在进入系统之前需要用户通过身份验证,当用户正确的输入了用户名称和密码后即可进入系统的主界面。本系统的用户主要分为管理员,老师和同学。若是管理员登录可以进行增,添,改学生的信息和成绩、管理学生基本信息、管理学生成绩信息、以及统计成绩。若是学生登录,则可以进行修改自己的密码,查询自己的信息及成绩。老师可以修改自己的密码,也可以查询所想查的学生的信息及成绩 3.3 需求分析(1) 用户需求此学生成绩管理系统的用 户分为老师,管理员和学生,其中管理员可以实现对学生基本信息、学生成绩等信息的增、删、查、改等操作;而学生只能查看基本信息和成绩信息以及更改个人密码,所以合理分
4、配用户的权限显得十分重要。以用户登录用户名和密码来核对确认用户,管理好这些用户对系统安全有十分重要的影响。(2) 功能需求 登录模块:主要分为老师,管理员和学生,对于登录后,按照各自的需求进一步进行。 基本信息管理模块:管理员实现对学生信息的增、删、查、改等操作;学生可以查看基本信息和成绩信息。34系统总体设计学生成绩管理系统的设计,主要解决的是对系统中的学生基本信息、学生成绩信息以及统计学生成绩的管理工作。首先,需要定义各个所需要的数据对象,然后在这些对象上进行操作;其次,实现功能模块时,采用先模块化,后集成化,即对系统各个功能模块分别独立设计和调试,在创建系统主登录界面时再将各个功能模块通
5、过主菜单对各个模块的调用集成到一起,最后进行系统整体设计调试。在数据存储和操作方面,采用文件的读写,并在读出数据之后放入链表进行操作;并在数据更新之后,系统退出之前及时把数据写入文件,这样可以减少对磁盘的直接操作次数,从而提高系统设计的效率。系统流程图如图3-1所示:登录管理员学生老师修改密码查询自己的成绩查询所有学生信息修改密码删除学生信息修改学生信息查询学生信息增加学生信息 图 3-1 系统流程图四概念结构设计此项目主要有四个实体,分别是管理员,老师,学生,学生有八个属性,分别是姓名,学号,性别,密码,大学外语,高数,计算机操作系统,平均分,总分。而老师和管理员则只有两个属性,分别是用户名
6、和密码。根据这些信息所画的E-R图则如图4-1所示:学号姓名大学外语密码性别平均分高数学 生总分计算机操作系统nm授课管理mm1老 师密码用户名管 理 员密码用户名图4-1 系统E-R图五.系统总体设计 5.1 数据需求设计由于这些数据都需要存入文件需要用到对象输入输出流,所以都需要实现序列化,即 implements Serializable。(1) 用户数据首先定义一个父类级别的用户对象User,有以下属性: public String name; public String passwd; 此项目中包含了三个类,一个Student类,一个主类demoMain,一个方法类,即就是funct
7、ion类其中管理员有自己的出原始密码,和用户名,学生类中有各自的属性。(2) 学生数据 public String number ;/学号 public String name;/姓名 public String sex;/性别 public String passwd;/密码 public String math;/高数 public String English;/大学外语 public String OS;/计算机操作系统 public double Average;/平均成绩 public double AllScore;/总成绩5.2 类设计和数据存储(1)类设计 用户类:首先定义一
8、个学生类,拥有一些公共属性。管理员,老师,学生,管理员通过对学生信息的添加,学生可以按照自己的权限,查询属于自己的信息及成绩。这些类都需要实现序列化(implements Serializable),同时以便于写入文件,如果是父类实现了这个接口则子类就不需要实现了,通过继承实现了代码的重用,提高了代码的利用率。 数据的读写类:有数据的写入文件类Output和读出类Input,主要是用到对象输入输出流,这完成对数据的读入和读取,以及数据更新后的存储工作。 登录类:运行登录类需要输入用户账号和密码进行登录,如果账号错误会提示没有此用户,如果账号正确密码不对则提示密码输入错误而且如果输入密码三次错误
9、则自动退出系统,只有登录成功后才能进入管理界面。 程序主类:首先判断一下是否已创建存放文件夹的路径,如果没有则进行创建,然后判断是否有读写操作所需要的文件,没有则创建。在创建过程中需要进行初始化管理员的账号和密码。然后将信息添加到文件中去。(2)方法类 登录时:主要实现对输入信息的校验,如学生基本信息和成绩信息中性别只能输入男或女,成绩只能在0100分之间,进行添加学生时输入的学号不能重复,在添加学生成绩时需要先判断是否已添加此学生的基本信息如果没则提示需要先添加基本信息,还需要判断的是该学号在课程文件夹中是否已存在,如果存在则不允许添加重复学号的学生成绩信息等。 处理学生基本信息:此接口主要
10、是处理学生信息增、删、改、查及从文件中读取信息的初始化操。在进行添加学生信息时可以一次添加多条学生信息。在进行查询时分为四种查询方式,可以按照学号进行查新也可以查询全部学生的信息。在进行修改时可以按照用户需要进行修改个别属性。当删除信息时,会有是否确认删除的提示。以免因为误操作而删除了有用的数据。 处理学生成绩信息:此接口主要是处理学生成绩的增、删、改、查以及从文件中读取课程信息。在添加学生成绩时需要进行对添加学生学号的校验,如果合法才允许添加其他信息,每个同学添加三门科目,通过,map的键值对的方式将课程名称和成绩添加到文件中去。在进行修改时可以根据需要选择要修改的科目,在修改时先将map中
11、的原成绩删除,然后添加新的成绩,然后再将信息写到文件中去。当删除信息时,会有是否确认删除的提示。以免因为误操作而删除了有用的数据。在进行查询时可以查询全部同学的成绩,也可以按照同学查询单个同学的成绩。(3)数据存储数据存储主要是通过对象流来实现的,要用对象流那么所要往文件中写的对象就必须实现Serializable这个接口。通过流仅能实现对数据的读写,不能实现对数据的增删改查,因此还需要借助List这个接口,通过接口回调得到一个list对象,将从文件中读取到的所有对象都放到list对象中,然后通过对list进行遍历,实现增删改查操作。5.3 功能模块设计学生信息查询信息管理员员员员学生添加信息
12、删除信息修改信息修改密码查询信息 学生基本信息管理模块图5-1 学生信息管理 学生成绩管理模块 管理员可以实现对学生成绩的增、删、改、查等操作。学生只能是查询成绩,不能进行其他的操作。学生信息查询信息管理员学生添加信息删除信息修改信息修改信息查询信息图5-2 成绩管理六.具体功能实现6.1 登录模块的实现进入登录界面之后,可选择登录类别老师或学生,登录界面如下图6-1 所示, 图6-1登陆界面进入主系统,并调用function中的firstMenue()方法来显示登录界面,管理员,老师还有同学登录的界面不同。public void firstMenue() System.out.println
13、(请选择用户类型!);System.out.println(1.管理员 2.老师 3.学生 4.退出);System.out.print(请输入数字:);int num = 0;try num = System.in.read(); catch (IOException e) e.printStackTrace();if (num = 1) manageMenue(); else if (num = 2) teacherMenue(); else if (num = 3) studentManage(); else if (num = 4) System.exit(0);System.out.
14、println(*);6.2 管理员登陆进入登录界面之后,管理员可根据自己的需求选择要进行的功能,功能界面如下图6-2 所示: 图6-2管理员登陆管理员登陆所实现其功能的部分代码如下:public void manageMenue() System.out.println( 管理员登陆n);String ma1 = null;String passwd = null;try scan.readLine();System.out.println(请输入用户名);ma1 = scan.readLine();System.out.println(请输入密码);passwd = scan.readLi
15、ne(); catch (IOException e) e.printStackTrace();if (ma1.equals(yuyu) & passwd.equals()/ 系统已默认管理员的用户名与密码System.out.println(登陆成功);mannerAct(); else System.out.println(输入有误,请查证后重新输入);manageMenue();public void mannerAct() System.out.println(*请进行如下功能选择*);System.out.println(*1.查询学生成绩*);System.out.println(
16、*2.修改学生信息*);System.out.println(*3.删除学生信息*);System.out.println(*4.增添学生信息*);System.out.println(*5.返回上级菜单*);System.out.print(*请输入数字:);int num = 0;try num = System.in.read(); catch (IOException e) e.printStackTrace();if (num = 1) selectStuInformation(); else if (num = 2) try changeStuInformation(); catc
17、h (IOException e) e.printStackTrace(); else if (num = 3) deleteStuInformation(); else if (num = 4) addStuInformation(); else if (num = 5) firstMenue();6.3添加学生信息 进入登录界面之后,管理员可以添加学生的信息。如图6-3所示:, 图6-3添加学生信息管理员添加学生信息的部分代码如下:public void addStuInformation() String number = null;String name = null;String s
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 学生 成绩管理系统 说明书 40
限制150内