┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊
学生成绩管理系统
目录
1.设计题目 (2)
2.设计目的 (2)
3.设计分析 (2)
3.3可行性研究 (2)
3.3需求分析 (2)
3.3需求分析 (2)
4.概念结构设计 (3)
5.系统总体设计 (4)
java创建文件
5.1数据需求设计 (4)
5.2模块设计和数据存储 (5)
5.3功能模块设计 (6)
6.具体功能实现 (7)
6.1登录模块的实现 (10)
6.2管理员登陆 (8)
6.3添加学生信息 (10)
6.4查询学生信息 (13)
6.5修改学生信息 (14)
6.6添加学生信息 (17)
7.总结 (17)
8.参考文献 (18)
9.附录 (18)
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊
一.设计题目
学生成绩管理系统
二.设计目的
巩固和加深学生对高级语言程序设计课程的基本知识的理解和掌握,掌
握java语言编程和程序调试的基本技能,利用java语言进行基本的软件设计,提高运用java语言解决实际问题的能力。
三.设计分析
3.1可行性研究
利用面向对象的JAVA语言来进行系统开发,可以很方便的根据实际定义各个所需要的对象,并对这些对象进行操作。同时由于本系统是在控制台进行各种用户操作,所以需要及时验证用户的输入是否正确,并进行相应的提示,这些需求和功能在目前情况下利用所学知识完全可以实现。并且本系统采用文件来存储数据,操作比较简单,但是在一定程度上限制数据量和系统的运行速度。
该学生成绩管理系统管理系统是在Windows7系统下进行开发和运行的,这些系统目前已经比较普及,用户在该系统中可以方便的进行各种操作,实现预期的目的。但是受控制台的限制,使得用户的操作不是很方便,这需要下一步的系统改进和升级,但是本系统仍然是可以正常运行和使用的
3.2问题陈述
此项目是学生成绩管理系统,管理员对学生的成绩进行管理和分析。在进入系统之前需要用户通过身份验证,当用户正确的输入了用户名称和密码后即可进入系统的主界面。
本系统的用户主要分为管理员,老师和同学。若是管理员登录可以进行增,添,改学生的信息和成绩、管理学生基本信息、管理学生成绩信息、以及统计成绩。若是学生登录,则可以进行修改自己的密码,查询自己的信息及成绩。老师可以修改自己的密码,也可以查询所想查的学生的信息及成绩
3.3需求分析
(1)用户需求
此学生成绩管理系统的用户分为老师,管理员和学生,其中管理员可以实现对学生基本信息、学生成绩等信息的增、删、查、改等操作;而学生只能查
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊看基本信息和成绩信息以及更改个人密码,所以合理分配用户的权限显得十分重要。以用户登录用户名和密码来核对确认用户,管理好这些用户对系统安全有十分重要的影响。
(2)功能需求
①登录模块:主要分为老师,管理员和学生,对于登录后,按照各自的需求进一步进行。
②基本信息管理模块:管理员实现对学生信息的增、删、查、改等操作;学生可以查看基本信息和成绩信息。
3.4系统总体设计
学生成绩管理系统的设计,主要解决的是对系统中的学生基本信息、学生成绩信息以及统计学生成绩的管理工作。首先,需要定义各个所需要的数据对象,然后在这些对象上进行操作;其次,实现功能模块
时,采用先模块化,后集成化,即对系统各个功能模块分别独立设计和调试,在创建系统主登录界面时再将各个功能模块通过主菜单对各个模块的调用集成到一起,最后进行系统整体设计调试。在数据存储和操作方面,采用文件的读写,并在读出数据之后放入链表进行操作;并在数据更新之后,系统退出之前及时把数据写入文件,这样可以减少对磁盘的直接操作次数,从而提高系统设计的效率。系统流程图如图3-1所示:
登录
管理员老师学生
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊
图3-1系统流程图
四.概念结构设计
此项目主要有四个实体,分别是管理员,老师,学生,学生有八个属性,分别是姓名,学号,性别,密码,大学外语,高数,计算机操作系统,平均分,总分。而老师和管理员则只有两个属性,分别是用户名和密码。根据这些信息所画的E-R图则如图4-1所示:
n m
m
m
1
图4-1系统E-R图
五.系统总体设计
5.1数据需求设计
由于这些数据都需要存入文件需要用到对象输入输出流,所以都需要实现序列化,即implements Serializable。
(1)用户数据
管理员
学生
老师
学号姓名性别密码
高数
大学外语
计算机操
作系统
平均分
总分
用户名密码用户名密码
管理授课
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊
首先定义一个父类级别的用户对象User,有以下属性:
public String name;
public String passwd;
此项目中包含了三个类,一个Student类,一个主类demoMain,一个方法类,即就是function类其中管理员有自己的出原始密码,和用户名,学生类中有各自的属性。
(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)类设计
①用户类:首先定义一个学生类,拥有一些公共属性。管理员,老师,学生,管理员通过对学生信息的添加,学生可以按照自己的权限,查询属于自己的信息及成绩。这些类都需要实现序列化(implements Serializable),同时以便于写入文件,如果是父类实现了这个接口则子类就不需要实现了,通过继承实现了代码的重用,提高了代码的利用率。
②数据的读写类:有数据的写入文件类Output和读出类Input,主要是用到对象输入输出流,这完成对数据的读入和读取,以及数据更新后的存储工作。
③登录类:运行登录类需要输入用户账号和密码进行登录,如果账号错误会提示没有此用户,如果账号正确密码不对则提示密码输入错误而且如果输入密码三次错误则自动退出系统,只有登录成功后才能进入管理界面。
⑤程序主类:首先判断一下是否已创建存放文件夹的路径,如果没有则进行创建,然后判断是否有读写操作所需要的文件,没有则创建。在创建过程中需要进行初始化管理员的账号和密码。然后将信息添加到文件中去。
(2)方法类
①登录时:主要实现对输入信息的校验,如学生基本信息和成绩信息中性

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。