《JAVA程序设计》课程设计大作业-Java学生管理系统.doc

上传人:yyf 文档编号:5016583 上传时间:2020-01-28 格式:DOC 页数:18 大小:821.50KB
返回 下载 相关 举报
《JAVA程序设计》课程设计大作业-Java学生管理系统.doc_第1页
第1页 / 共18页
《JAVA程序设计》课程设计大作业-Java学生管理系统.doc_第2页
第2页 / 共18页
《JAVA程序设计》课程设计大作业-Java学生管理系统.doc_第3页
第3页 / 共18页
《JAVA程序设计》课程设计大作业-Java学生管理系统.doc_第4页
第4页 / 共18页
《JAVA程序设计》课程设计大作业-Java学生管理系统.doc_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《《JAVA程序设计》课程设计大作业-Java学生管理系统.doc》由会员分享,可在线阅读,更多相关《《JAVA程序设计》课程设计大作业-Java学生管理系统.doc(18页珍藏版)》请在三一文库上搜索。

1、山东理工大学计算机学院 JAVAJAVA程序设计程序设计大作业大作业 题目:题目: Java学生管理系统学生管理系统 班 级 姓 名 学 号 2011 年 12 月 6 日 2 目目 录录 摘 要 3 第一章 设计简介及设计方案4 1.1 系统功能分析4 1.2 系统功能模块设计4 1.3 数据库功能分析4 1.4 数据库需求分析5 第二章 详细设计6 2.1 数据库设计6 2.2 详细编程8 第三章 设计结果及分析 12 3.1 设计结果 12 3.2 设计结果分析 19 总 结17 参考文献 17 3 摘摘 要要 随着计算机技术的飞速发展,当今社会正快速向信息化社会前进。而如 今学校的规模

2、不断扩大,学生数量急剧加,有关学生的各种信息量也成倍增 长,面对庞大的信息量,就需要有学生信息管理系统来提高学生管理工作的 效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询, 从而减少管理方面的工用量。此次设计我们使用 JAVA 编程,实现了学生信息 管理系统的过程。本系统采用 Sun 公司的 j2sdk1.4.2_04 和 SQL SERVER 2000 数据库管理系统作为开发工具,通过对学生信息管理系统进行可行性分 析、需求分析和设计逐步将一个学生信息管理系统的开发过程呈现出来。系 统可以对学校的所有专业信息和课程信息进行管理,可以对学生的基本信息 和成绩进行管理,最后本

3、系统能对专业信息、课程信息、学生基本信息和成 绩信息进行查询。 关键词:数据库;java;SQL SERVER 2000;查询 4 第一章第一章 设计简介及设计方案设计简介及设计方案 1.11.1 系统功能分析系统功能分析 系统开发的总体任务是实现学生信息关系的系统化、规范化和自动化。 系统功能分析是在系统开发的总体任务的基础上完成的。本设计中学生 信息管理系统需要完成的功能主要有: 有关学籍等信息的输入,包括学生基本信息、所在班级、所学课程和 成绩等。 学生信息的查询,包括学生基本信息、所在班级、已学课程和成绩等。 学生信息的修改。 学校基本课程信息的输入和查询。 基本课程信息的修改。 学生

4、课程的设置和修改。 学生成绩信息的输入,修改,查询,统计。 1.21.2 系统功能模块设计系统功能模块设计 对上述各项功能进行集中、分块,按照结构化程序设计的要求,得到如 图2-1所示的系统功能模块图。 图2-1 系统功能模块图 5 1.31.3 数据库功能分析数据库功能分析 数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的 好坏将直接对应用系统的效率以用实现的效果产生影响。合理的数据库结构 设计可以提高数据存储的效率,保证数据的完整和一致。同时,合理的数据 库结构也将有利于程序的实现。 设计数据库时应该首先充分了解用户各个方面的需求,包括现有的以及 将来可能增加的需求。 1.4

5、1.4 数据库需求分析数据库需求分析 用户的需求具体体现在各种信息的提供、保存、更新、和查询,这就要 求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构 以及数处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。 针对一般学生信息管理系统的需求,能过对学生学习过程的内容和数据 流程分析,设计如面所示的数据项和数据结构: 学生基本信息:包括的数据项有:学生学号、学生姓名、性别、班级号、 籍贯、入校日期、专业名、学院名、生日等。 课程基本信息:包括的数据项有:课程号、课程名称、授课老师、上课 教室、课程类别、上课时间等。 学生成绩信息:包括的数据项有:学生学号、课程编号、

6、考试分数等。 6 第二章第二章 详细设计详细设计 2.12.1 数据库设计数据库设计 本实验采用 SQL Server 2000 数据库系统。 2.1.12.1.1 数据库概念结构设计数据库概念结构设计 首先设计出能够满足用户需求的各种实体,以及它们之间的关系,为后 面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的 作用形成数据的流动。 本实例根据上面的设计规划出的实体有:学生实体、课程实体。各个实 体之间关系 E-R 图如图 3-1 所示。 学生 学号 姓名 性别 民族 入校日期 专业 名 学院 生日 选 课 课程 成绩 课程号 课程名 授课老师 上课教师课程类别 上课时间

7、 籍贯 图 3-1 实体之间关系 E-R 图 7 2.1.22.1.2 数据库概念结构设计数据库概念结构设计 现在需要将上面的数据库概念结构转化为 SQL Server 2000 数据库系统 所支持的实际数据模型,也就是数据库的逻辑结构。在上面的实体以及实体 之间关系的基础上,开成数据库中的表格以及各个表格之间的关系。学生信 息管理系统数据库中各个表格的设计结果如下面的几个表格所示。 1. 学生基本信息表 student,如表 3-1。 表 3-1 学生基本信息表 student 列名数据类型可否为空说明 snumINT(4)NOT NULL 学号(主键) SnameNVARCHAR(50)N

8、ULL 学生姓名 SsexNVARCHAR(10)NULL 性别 SethnicNVARCHAR(50)NULL 民族 ShomeNVARCHAR(50)NULL 籍贯 SyearNVARCHAR(50)NULL 入学时间 SmajorNVARCHAR(50)NULL 专业名 ScollegeNVARCHAR(50)NULL 学院名 SbirthNVARCHAR(50)NULL 出生日期 2. 课程基本信息表 course,如表 3-2。 表 3-2 课程基本信息表 course 列名数据类型可否为空说明 CnumINT(4)NOT NULL 课程号(主键) CnameNVARCHAR(50)

9、NULL 课程名 CteacherNVARCHAR(50)NULL 授课老师 CplaceNVARCHAR(50)NULL 上课地点 CtypeNVARCHAR(50)NULL 课程类别 CtimeNVARCHAR(50)NULL 上课时间 3 学生成绩信息表 sc,如表 3-3。 表 3-3 学生成绩信息表 sc 列名数据类型可否为空说明 Snumint(4)NOT NULL 学号 CnumInt(4)NOT NULL 课程号 8 GradeNumeric(5)NULL 成绩 2.22.2 详细编程详细编程 2.2.1 学生信息管理模块 1.添加学生信息。此部分实现了对学生信息的增加功能,

10、public class AddStuInfo extends StuInfo StuBean getSnum = new Stubean(); public AddStuInfo() this.setTitle(“添加学生信息“); this.setResizable(false); sNum.setEditable(false); sNum.setText(“+getSnum.getStuId(); 2.删除学生信息。此部分实现了对学生信息的删除。在删除前先查询出需要 删除的学生的基本信息,在进行删除。 public class DelStuInfo extends StuInfo Str

11、ing sNum_str = “; public DelStuInfo() this.setTitle(“删除学生信息“); this.setResizable(false); sNum.setEditable(false); sNum.setText(“请查询学号“); sName.setEditable(false); sSex.setEditable(false); sSethnic.setEditable(false); sBirth.setEditable(false); sYear.setEditable(false); sMajor.setEditable(false); sCo

12、llege.setEditable(false); sHome.setEditable(false); /设置运行时窗口的位置 Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); this.setLocation(screenSize.width - 400) / 2, (screenSize.height - 300) / 2 + 45); 9 3.修改学生信息。此部分实现了对学生信息的修改。在修改时先查询出要修 改的学生的基本信息,然后在进行需要的改动并保存。 public class EditStuInf

13、o extends StuInfo String sNum_str = “; public EditStuInfo() this.setTitle(“修改学生信息“); this.setResizable(false); sNum.setEditable(false); sNum.setText(“请查询学号“); sName.setEditable(false); sSex.setEditable(false); sSethnic.setEditable(false); sBirth.setEditable(false); sYear.setEditable(false); sMajor.s

14、etEditable(false); sCollege.setEditable(false); sHome.setEditable(false); /设置运行时窗口的位置 Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); this.setLocation(screenSize.width - 400) / 2, (screenSize.height - 300) / 2 + 45); 2.2.2 课程信息管理模块 1.增加课程信息。此部分实现了对课程信息的增加。 public class AddCourseI

15、nfo extends CourseInfo CrsBean getCnum = new CrsBean(); public AddCourseInfo() this.setTitle(“添加课程信息“); this.setResizable(false); cNum.setEditable(false); cNum.setText(“+getCnum.getCrsId(); cName.setEditable(true); cTeacher.setEditable(true); cType.setEditable(true); cTime.setEditable(true); cPlace.

16、setEditable(true); 10 /设置运行位置,使对话框居中 Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); this.setLocation( (int) (screenSize.width - 400) / 2 , (int) (screenSize.height - 300) / 2 +45); 2.删除课程信息。此部分实现了对课程信息的删除。在删除时先查询出需要 删除的课程基本信息,在进行删除。 public class DelCourseInfo extends CourseInfo

17、String cNum_str = “; public DelCourseInfo() this.setTitle(“删除课程信息“); this.setResizable(false); cNum.setEditable(false); cNum.setText(“请查询课程号“); cName.setEditable(false); cTeacher.setEditable(false); cType.setEditable(false); cTime.setEditable(false); cPlace.setEditable(false); /设置运行位置,使对话框居中 Dimensi

18、on screenSize = Toolkit.getDefaultToolkit().getScreenSize(); this.setLocation( (int) (screenSize.width - 400) / 2 , (int) (screenSize.height - 300) / 2 +45); 3.修改课程信息。此部分实现了对课程信息的修改。在修改时先查询出需要 修改课程的信息,在进行相应的修改。 public class EditCourseInfo extends CourseInfo String cNum_str = “; public EditCourseInfo

19、() this.setTitle(“修改课程信息“); this.setResizable(false); cNum.setEditable(false); cNum.setText(“请查询课程号“); cName.setEditable(false); cTeacher.setEditable(false); cType.setEditable(false); cTime.setEditable(false); 11 cPlace.setEditable(false); /设置运行位置,使对话框居中 2.2.3 成绩管理模块 1.成绩的增加。 public class AddGradeIn

20、fo extends GradeInfo implements ActionListener public AddGradeInfo() this.setTitle(“添加成绩信息“); this.setResizable(false); /设置运行位置,使对话框居中 2.成绩的修改。 public class EditGradeInfo extends GradeInfo implements ActionListener public EditGradeInfo() this.setTitle(“修改成绩信息“); this.setResizable(false); /设置运行位置,使对话

21、框居中 2.2.4 查询模块 该模块实现了对学生信息的分类查询,可以通过学号、姓名、性别、学 院、专业分别查询相应的学生信;另外还实现了课程信息的分类查询,可以 通过课程课程名称和课程教师分别查询相应的课程信息。最后还实现了对成 绩的查询。 2.2.5 数据库连接 /连接数据库的类 public class Database private Statement stmt=null; ResultSet rs=null; private Connection conn=null; String sql; String strurl=“jdbc:odbc:tls“; 12 public Datab

22、ase() 第三章第三章 设计结果及分析设计结果及分析 3.1 设计结果 本系统实现了对学生的基本信息和成绩的管理,还可以对学校的所有课程 进行管理,最后本系统还实现了对课程信息、学生基本信息和成绩信息的查 询。系统主界面如图: 图 4-1 系统主界面 3.1.13.1.1 学生信息的管理学生信息的管理 1. 增加学生信息。 13 图 4-2 添加学生信息 2. 查询学生信息。 按学号查询,如图 4-3 和 4-4; 图 4-3 学号查询 图 4-4 学生信息查询 此外,此系统还实现了按姓名、性别、学院、专业的查询。 3. 删除学生信息。先查询出要删除的学生的信息,在点击删除,如图 4-5 所

23、 示。 14 图 4-5 删除学生信息 3.1.2 课程信息的管理 1. 添加课程信息。这里的课程编码是按顺序自动生成的,只要输入相应的信 息,点击增加即可添加新的课程信息。如图 4-6。 图 4-6 添加课程信息 2. 修改课程信息。先查询出需要修改的的课程的信息,然后修改相应的需要 修改的地方,点击修改即可完成修改。如图 4-7。 15 图 4-7 修改课程信息 3. 删除课程信息。先点击查询,输入相应的课程号,查询出需要删除的课程 信息,确认之后点击删除即可完成删除。如图 4-8。 图 4-8 删除课程信息 3.1.3 成绩管理 1. 学生选课。一个学生需要首先进行选课才能有成绩,所以首

24、先要进行选课, 如图 4-9。 16 图 4-9 学生选修 2. 增加成绩。本系统可以方便的写入学生的成绩,以便统计与查询。如图 4-10。 图 4-10 增加成绩 3. 修改成绩。有时候输入成绩可能出错,或者成绩加错了,所以需要修改成 绩,本系统实现了此功能,如图 4-11。 图 4-11 修改成绩 3.2 设计结果分析 基本达到了预期的实验效果,实现了对学校的所有专业信息和课程信息 进行管理,对学生的基本信息和成绩进行管理,最后本系统能对专业信息、 课程信息、学生基本信息和成绩信息进行查询。不过界面尚做的不够漂亮, 而且没有登陆界面,还有很多需要完善的地方。 17 总总 结结 通过对做这次

25、课程设计,使我对数据库的应用有了更深一步的认识。又 使我掌握了使用各种关系数据库为后台数据库设计一个信息管理系统。在进 行课程设计的同时,我遇到了大量问题,使我实际解决问题的能力得以提高。 尤其是在做实验时,对 JAVA 连接数据库还很陌生,但是后来通过上网, 去图书馆找资料就很快的搞定了。从中理解了大学对一个人来说,最重要的 不是你学了多少知识,而是快速学习的能力,同时我也知道,任何一件事不 是只有知道了相关信息才去做他,即使不知道相关信息也可以动手去做。一 边学一边做,在信息时代里,这是一个人的生存手段。 总之,这次课程设计受益匪浅,不仅锻炼了我做事坚持不懈的心态,也 慢慢地培养了我不懂就查书的好习惯,我的自学能力也有了一定的提高,我 更明白了搞计算机这行,要学到真正的技术完全要靠自己,在课堂上只能学 到最基本的东西,但这最基本的东西也一定要学好。 参考文献参考文献 1 萨师煊,王珊.数据库系统概论(第三版)M.高等教育出版社, 2000 年 2 邓良松,刘海岩,陆丽娜.软件工程M.西安电子科技大学出版社, 2000 年 3 耿冲. SQL Server 2000 数据库管理M. 机械工业出版社,2001 年 4 赤金,聂松编. JavaApplet 实例编程M. 中国水利水电出版社 5 蔡翠平.JAVA 程序设计M. 北方交通大学出版社 18

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1