学生成绩管理系统说明书.docx
- 文档编号:29272934
- 上传时间:2023-07-21
- 格式:DOCX
- 页数:20
- 大小:244.98KB
学生成绩管理系统说明书.docx
《学生成绩管理系统说明书.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统说明书.docx(20页珍藏版)》请在冰豆网上搜索。
学生成绩管理系统说明书
*******************
实践教学
*******************
兰州理工大学
计算机与通信学院
2012年秋季学期
Java课程设计
题目:
学生成绩管理系统
专业班级:
10级软件工程基地班
姓名:
学号:
指导教师:
成绩:
摘要
设计内容是学生成绩管理系统,主要是进行学生信息的录入,成绩单录入,修改和成绩单的输出,成绩的排序。
现在各学校的每次考试后,对成绩的处理已是必须的事情,系统主要是数据库的使用和文件流的使用,各个类的建立和主界面,主菜单的设计等。
在系统设计中要分析和定义各个类,每个类中要有各自的属性和方法,培养学生面向对象程序设计的思想,要求学生达到熟练掌握Java语言的基本知识和技能,基本掌握面向对象程序设计的基本思路和方法,解决简单的面向对象程序设计问题。
同时强调好的程序设计风格,提高解决实际问题的能力。
关键词:
学生成绩管理系统,主菜单,文件流,数据库。
目录
摘要I
序言I
第一章分析与设计1
第二章详细设计2
第三章系统测试8
第四章软件使用说明书9
设计总结13
参考文献14
致谢15
序言
通过这次课程设计,我更加熟悉的掌握了java中的图形界面的设计,同时学会了将数据库与程序的联系结合,增强了我的动手能力,对我很大的提高.在本次作业中,在连接数据库的时候,遇到不少问题,很多都是很基础的小问题,原因是自己对数据库的不熟悉。
通过这次课设,应用的是Myeclipse工具,加深了对编程工具的运用,不再只是理论上的死板的知识,应用到了实际程序中。
让我对数据库的使用有了蛮多的认识和了解。
虽然我的课设内容是用文件保存,但是也学到了许多数据库的东西,数据库的连接,数据源的建立和MySQL的运用等等。
要求利用面向对象的方法以及Java的编程思想来完成系统的设计;要求在设计的过程中,建立清晰的类层次;在系统设计中要分析和定义各个类,每个类中要有各自的属性和方法;在系统的设计中,要求运用面向对象的机制(继承、派生及多态性)来实现系统功能。
在基本要求达到后,可进行创新设计,如根据查找结果进行修改的功能及设计出比较友好的界面等。
这次课设我付出了很多的时间和精力,没有像原先的课设那样带着敷衍和不在意,感觉付出了也很快乐,遇到不懂的就去翻书,上网查资料,下载代码,每次上机的时候学到很多。
第一章分析与设计
系统主要流程图:
图1-1系统流程图
第二章详细设计
系统的所用到的类有:
AddClassGrade、AddGrade、AddStudent、DeleteGrade、DeleStudent、GetGrade、GetStudent、Info_Manage、SetGrade、SetStudent、student_manage、UsingExit
(1)Info_Manage类是登陆页面:
成员变量:
JLabelJLUserName=newJLabel("用户名:
");
JLabelJLPaw=newJLabel("密码:
");
JTextFieldJTUserName=newJTextField();
JPasswordFieldJPsw=newJPasswordField();
JButtonJB1=newJButton("登录");
JButtonJB2=newJButton("取消");
成员方法:
Info_manage()、publicvoidactionperformed()和main()。
界面如下:
图2-1登陆界面
(2)student_manage类是主菜单界面:
成员变量:
JMenuBarjm=newJMenuBar();
JMenujm1=newJMenu("信息");
JMenuItemjmi1=newJMenuItem("录入信息");
JMenuItemjmi2=newJMenuItem("删除信息");
JMenuItemjmi3=newJMenuItem("修改信息");
JMenujm4=newJMenu("成绩");
JMenujm42=newJMenu("删除成绩");
JMenujm43=newJMenu("录入修改成绩");
JMenujm44=newJMenu("统计");
JMenuItemjmi11=newJMenuItem("按学期录入修改");
JMenuItemjmi12=newJMenuItem("按班级录入修改");
JMenuItemjmi443=newJMenuItem("学生成绩排名");
JMenujm2=newJMenu("查询");
JMenuItemjmi21=newJMenuItem("基本信息查询");
JMenuItemjm22=newJMenuItem("成绩查询");
JMenujm5=newJMenu("班级成绩单");
JMenujm3=newJMenu("退出");
JMenuItemjmi31=newJMenuItem("退出");
Containercon=newContainer();
JLabellabel=newJLabel("欢迎登录学生信息系统",JLabel.CENTER);
JPanelpCenter=newJPanel();
成员方法:
publicstudent_manage()、publicvoidactionperformed()和main()。
菜单界面如下:
图22主菜单
(3)AddGrade类用于录入成绩:
成员变量:
JLabelJL=newJLabel("成绩录入",JLabel.CENTER);
JLabelJLTerm=newJLabel("学期:
");
JTextFieldJTTerm=newJTextField();
JLabelJLNumber=newJLabel("学号:
");
JTextFieldJTNumber=newJTextField();
JLabelJLName=newJLabel("姓名:
");
JTextFieldJTName=newJTextField();
JLabelJLClass=newJLabel("语文:
");
JTextFieldJTClass=newJTextField();
JLabelJLsex=newJLabel("性别:
");
ButtonGroupBG=newButtonGroup();
JRadioButtonJRB1=newJRadioButton("男");
JRadioButtonJRB2=newJRadioButton("女");
JLabelJL1=newJLabel("数学:
");
JTextFieldJT1=newJTextField();
JLabelJL2=newJLabel("班级:
");
JTextFieldJT2=newJTextField();
JButtonJBAdd=newJButton("添加");
JButtonJBNext=newJButton("重置");
JButtonJBExit=newJButton("退出");
成员方法:
publicAddGrade(),publicvoidactionperformed()和main()。
成绩录入:
图2-3成绩录入
(4)AddStudent类用于添加学生信息:
成员变量:
JLabelJL=newJLabel("添加基本信息",JLabel.CENTER);
JLabelJLNumber=newJLabel("学号:
");
JTextFieldJTNumber=newJTextField();
JLabelJLName=newJLabel("姓名:
");
JTextFieldJTName=newJTextField();
JLabelJLClass=newJLabel("班级:
");
JTextFieldJTClass=newJTextField();
JLabelJLsex=newJLabel("性别:
");
ButtonGroupBG=newButtonGroup();
JRadioButtonJRB1=newJRadioButton("男");
JRadioButtonJRB2=newJRadioButton("女");
JLabelJL1=newJLabel("学院:
");
JTextFieldJT1=newJTextField();
JLabelJL2=newJLabel("生日:
");
JTextFieldJT2=newJTextField();
JButtonJBAdd=newJButton("添加");
JButtonJBNext=newJButton("重置");
JButtonJBExit=newJButton("退出");
成员方法:
publicAddStudent()、publicvoidactionperformed()和main()。
信息录入:
图24学生信息的录入
(5)SetGrade类用于查询学生成绩:
成员变量:
JLabelJL=newJLabel("查询成绩",JLabel.CENTER);
JLabelJLNumber=newJLabel("请输入学号:
");
JTextFieldJTNumber=newJTextField();
JLabelJLName=newJLabel("姓名:
");
JTextFieldJTName=newJTextField();
JLabelJLClass=newJLabel("语文:
");
JTextFieldJTClass=newJTextField();
JLabelJLsex=newJLabel("性别:
");
ButtonGroupBG=newButtonGroup();
JRadioButtonJRB1=newJRadioButton("男");
JRadioButtonJRB2=newJRadioButton("女");
JLabelJL1=newJLabel("数学:
");
JTextFieldJT1=newJTextField();
JLabelJL3=newJLabel("总分:
");
JTextFieldJT3=newJTextField();
JLabelJL4=newJLabel("平均分:
");
JTextFieldJT4=newJTextField();
JLabelJL2=newJLabel("班级:
");
JTextFieldJT2=newJTextField();
成员方法:
publicSetGrade()、publicvoidactionperformed()和main()。
成绩查询:
图24成绩查询
(6)GetGrade类用于成绩修改:
成员变量:
JButtonJBSet=newJButton("查询");
JButtonJBNext=newJButton("重置");
JButtonJBExit=newJButton("退出");
JLabelJL=newJLabel("修改成绩",JLabel.CENTER);
JLabelJLNumber=newJLabel("学号:
");
JTextFieldJTNumber=newJTextField();
JLabelJLName=newJLabel("姓名:
");
JTextFieldJTName=newJTextField();
JLabelJLClass=newJLabel("语文:
");
JTextFieldJTClass=newJTextField();
JLabelJLsex=newJLabel("性别:
");
ButtonGroupBG=newButtonGroup();
JRadioButtonJRB1=newJRadioButton("男");
JRadioButtonJRB2=newJRadioButton("女");
JLabelJL1=newJLabel("数学:
");
JTextFieldJT1=newJTextField();
JLabelJL2=newJLabel("班级:
");
JTextFieldJT2=newJTextField();
JButtonJBGet=newJButton("修改");
JButtonJBNext=newJButton("重置");
JButtonJBExit=newJButton("退出");
成员方法:
publicSetGrade()、publicvoidactionperformed()和main()。
其他类用于其他功能的实现:
UsingExit用于界面的退出;
DeleteStudent用于删除学生信息;DeleteGrade用于删除成绩,利用各个类的各自的构造函数和动作借口的实现各自的功能。
退出界面:
图25退出
第三章系统测试
测试目标:
系统要求:
(1)以菜单方式工作;
(2)录入信息用文件保存;
(3)能按学期、按班级完成对学生成绩的录入、修改;
(4)能按班级统计学生的成绩,求学生的总分及平均分,并能根据学生的平均成绩进行排序;
(5)能查询学生成绩,不及格科目及学生名单;
(6)能按班级输出学生的成绩单。
测试环境:
确保项目测试环境符合测试要求,减少严重影响测试结果的真实性和正确性的风险。
要求:
∙硬件环境:
普通PC机CPU:
Pentium-4以上内存:
256M以上硬盘:
30G以上
∙软件环境:
操作系统:
Windows2000/XP/7
软件运行环境:
MyEclipseMysql
测试方案:
模块名称
测试点
内容说明
学生
信息
管理
系统
信息录入,修改类
测试是否可以进行信息的录入,保存。
成绩录入,修改类
测试是否可以进行成绩的录入,保存。
成绩、信息查询类
是否可以进行信息、成绩、名单的查询。
用student_manage类产生主菜单界面,用以方便的进行各种功能的实现:
有五个菜单项:
信息,成绩,查询,班级成绩单和退出用以完成各种功能的实现。
信息菜单项包含:
录入,删除,修改。
用以实现学生信息的录入,删除和修改。
成绩菜单项包含:
删除,录入修改成绩,统计。
用以完成对于学生成绩的删除,修改和按班级成绩统计排名。
查询菜单项包含:
基本信息,成绩。
用以实现学生信息的查询和成绩的查询。
班级成绩查询用以实现班级成绩单的输出。
退出菜单项用以实现系统功能的退出。
第四章软件使用说明书
(1)登陆界面:
通过界面登陆系统总菜单:
图41
(2)主菜单界面:
以菜单的形式进行系统操作:
图42
(2)进行学生信息的录入:
图43
显示录入成功:
图44
(3)删除学生信息:
图45
(4)录入学生成绩:
图46
显示录入成绩成功:
图47
(4)查询学生信息:
利用学号查询学生信息:
图48
(5)查询学生成绩:
图49
(6)退出界面:
图410
设计总结
总体来说,这次对自己的程序还是不够满意,因为由于这学期的课程很紧,考试紧张,有许多功能没有实现了。
感觉有点失败,但是确实我自己努力的结果,也很满足了。
虽然懂了很多理论知识,可总是不能熟练的运用到实际(写程序)上来。
通过这次课程设计的教训,我并没有到无比的气馁,而是更有信心去迎接以后的学习,因为我今天认识到了自己的最本质的错误。
在这,我希望自己在接下来的两年中能好好的学习,争取能学到一些对将来有用的东西,从而不会在社会的残酷竞争下落伍了。
当我们对社会的认识加深时,我们的某些观念就会更加有进步意义,更有助于我们立足社会,发展自身。
大学的四年中我肯定要具备一定的交际能力,因为交际能力在以后的发展中也起者举足轻重的作用,现在的我可以说交际能力特别的差,连和陌生人说话的勇气都没有,这是极其可悲的。
我想通过大学这个大的舞台提高自己的交际的能力。
所以我会尽量多参加学校的一些活动,提高自己的综合素养和能力。
参考文献
[1]曲朝阳,杨杰明等.Java程序设计.北京:
清华大学出版社,2008.10
[2]耿祥以,张跃平.Java大学生实用教程.北京:
电子工业出版社,2012.6
[3]明日科技.Java经典编程.北京:
清华大学出版社,2012.10
[4]李尊朝,苏军.Java语言程序设计.北京:
中国铁道出版社,2004.2
[5]王博.面向对象的建模、设计技术与方法.北京希望电脑公司,1990.
致谢
感谢*老师布置的课设任务,锻炼了我们独立思考的能力,提升了我们的实践的能力,懂得了实践的重要性。
让我们对Java语言的面向对象的程序设计有了更深的认识,我的同学在设计完成后对程序的测试,没有他们,也许就难以发现一些潜在的错误,在此一并表示感谢。
让我们更加的认识到自身的不足和缺陷,并且努力去提高自身。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统 说明书