学生信息管理系统课程设计.doc

上传人:豆**** 文档编号:17534097 上传时间:2022-05-24 格式:DOC 页数:15 大小:213.50KB
返回 下载 相关 举报
学生信息管理系统课程设计.doc_第1页
第1页 / 共15页
学生信息管理系统课程设计.doc_第2页
第2页 / 共15页
点击查看更多>>
资源描述

《学生信息管理系统课程设计.doc》由会员分享,可在线阅读,更多相关《学生信息管理系统课程设计.doc(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流学生信息管理系统课程设计.精品文档.目 录前言 2第一章 概述31.1 课题背景31.2 课题任务31.3 课题要求31.4 开发工具4第二章 设计简介及设计方案52.1 系统功能分析52.2 系统功能模块设计52.3 数据库功能分析62.4 数据库需求分析6第三章 详细设计73.1 数据库设计73.2 详细编程9第四章 设计结果及分析 144.1 设计结果 144.2 设计结果分析 19总 结20参考文献 21前言随着计算机技术的飞速发展,当今社会正快速向信息化社会前进。而如今学校的规模不断扩大,学生数量急剧加,有关学生的各种信息量也成倍增

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

3、;SQL SERVER 2000;查询第一章 概述1.1 课题背景信息管理系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。在现今众多的学生管理系统中,最为常见的是学生学籍管理系统和学生课程成绩管理系统。这是对我国现今大多学校对学生管理的需要而开发设计的,但随着学校的发展,这种各自独立的系统远远不能满足学校管理的需要。学生档案管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生档案管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理

4、文件档案,这种管理方式存在着许多缺点,效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。而使用计算机对学生档案信息进行管理,具有手工管理所无法比拟的优点。例如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生档案管理的效率,也是企业的科学化、正规化管理的重要途径。1.2 课题任务1、设计内容为学生信息管理系统,总体任务是实现学生信息关系的系统化、规范化和自动化。2、对系统的功能进行比较完备、合理的分析,根据功能进行模块划分,给出功能结构图。1.3 课题要求1. 数据库设计(学生信息管理系统数据流程图,数

5、据库概念结构设计,数据库逻辑结构设计)。2. 数据库需求分析(学生信息管理系统数据流程图)用户的需求具体体现在各种信息的提供、保存、更新、和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。3. 数据库概念结构设计(E-R图)得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。4. 数据库物理结构设计现在需要将上面的数据库概念结构转化为数据库系统所支持的实际数据模型,也就

6、是数据库的物理模型。在上面的实体以及实体之间关系的基础上,生成数据库中的表格以及各个表格之间的关系。5. 选择自己熟悉的编程语言,完成系统实现。1.4 开发工具随着Internet网络的迅速发展,基于互联网的企业应用要求软件平台具有开放性、分布性和平台无关性。于是就相继出现了RPC/COM/CORBA等技术,但这些技术在实际应用中存在着许多不足和局限。它们的特定协议难以通过防火墙,因而不适于Web上的应用开发。为了进一步开发基于Web的应用,出现了Sun公司的Sun ONE(Open Net Environment 开发网络环境)和Microsoft公司的.NET等Web 服务技术体系。 Su

7、n ONE体系结构以Java语言为核心,包括J2SE/J2EE/J2ME和一系列的标准、技术及协议。它包括Sun独有的iPlanet软件系列,其中有在市场上受欢迎的LDAP目录服务器软件,以及Forte for Java便于在任何环境下书写Java 语言的软件工具。我们很容易就能从网上免费获得和使用包括Java 集成开发环境、Java数据库和中间件(Application Server)服务器等产品,以及它们的源代码。第二章 设计简介及设计方案2.1 系统功能分析系统开发的总体任务是实现学生信息关系的系统化、规范化和自动化。系统功能分析是在系统开发的总体任务的基础上完成的。本设计中学生信息管理

8、系统需要完成的功能主要有:l 有关学籍等信息的输入,包括学生基本信息、所在班级、所学课程和成绩等。l 学生信息的查询,包括学生基本信息、所在班级、已学课程和成绩等。l 学生信息的修改。l 学校基本课程信息的输入和查询。l 基本课程信息的修改。l 学生课程的设置和修改。l 学生成绩信息的输入,修改,查询,统计。2.2 系统功能模块设计对上述各项功能进行集中、分块,按照结构化程序设计的要求,得到如图2-1所示的系统功能模块图。图2-1 系统功能模块图2.3 数据库功能分析数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以用实现的效果产生影响。合理的数据库结构

9、设计可以提高数据存储的效率,保证数据的完整和一致。同时,合理的数据库结构也将有利于程序的实现。设计数据库时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。2.4 数据库需求分析用户的需求具体体现在各种信息的提供、保存、更新、和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。针对一般学生信息管理系统的需求,能过对学生学习过程的内容和数据流程分析,设计如面所示的数据项和数据结构:l 学生基本信息:包括的数据项有:学生学号、学生姓名、性别、民族、籍贯、入校日期、专业名、学院名、生日

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

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

12、别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)NULL课程名CteacherNVARCHAR(50)NULL授课老师CplaceNVARCHAR(50)

13、NULL上课地点CtypeNVARCHAR(50)NULL课程类别CtimeNVARCHAR(50)NULL上课时间3学生成绩信息表sc,如表3-3。表3-3 学生成绩信息表sc列名数据类型可否为空说明Snumint(4)NOT NULL学号CnumInt(4)NOT NULL课程号GradeNumeric(5)NULL成绩3.2 详细编程3.2.1学生信息管理模块1.添加学生信息。此部分实现了对学生信息的增加功能,public class AddStuInfo extends StuInfo StuBean getSnum = new Stubean();public AddStuInfo(

14、) this.setTitle(添加学生信息);this.setResizable(false);sNum.setEditable(false);sNum.setText(+getSnum.getStuId();sName.setEditable(true);sSex.setEditable(true);sSethnic.setEditable(true);sBirth.setEditable(true);sYear.setEditable(true);sMajor.setEditable(true);sCollege.setEditable(true);sHome.setEditable(t

15、rue);/设置运行时窗口的位置Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();this.setLocation(screenSize.width - 400) / 2, (screenSize.height - 300) / 2 + 45);2.删除学生信息。此部分实现了对学生信息的删除。在删除前先查询出需要删除的学生的基本信息,在进行删除。public class DelStuInfo extends StuInfoString sNum_str = ;public DelStuInfo() this.s

16、etTitle(删除学生信息);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);sCollege.setEditable(false);sHome.setEditable(false);/设置运行时窗口

17、的位置Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();this.setLocation(screenSize.width - 400) / 2, (screenSize.height - 300) / 2 + 45);3.修改学生信息。此部分实现了对学生信息的修改。在修改时先查询出要修改的学生的基本信息,然后在进行需要的改动并保存。public class EditStuInfo extends StuInfo String sNum_str = ;public EditStuInfo() this.setT

18、itle(修改学生信息);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);sCollege.setEditable(false);sHome.setEditable(false);/设置运行时窗口的位置

19、Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();this.setLocation(screenSize.width - 400) / 2, (screenSize.height - 300) / 2 + 45);3.2.2课程信息管理模块1.增加课程信息。此部分实现了对课程信息的增加。public class AddCourseInfo extends CourseInfoCrsBean getCnum = new CrsBean();public AddCourseInfo() this.setTitle(

20、添加课程信息);this.setResizable(false);cNum.setEditable(false);cNum.setText(+getCnum.getCrsId();cName.setEditable(true);cTeacher.setEditable(true);cType.setEditable(true);cTime.setEditable(true);cPlace.setEditable(true);/设置运行位置,使对话框居中Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();this.

21、setLocation( (int) (screenSize.width - 400) / 2 ,(int) (screenSize.height - 300) / 2 +45);2.删除课程信息。此部分实现了对课程信息的删除。在删除时先查询出需要删除的课程基本信息,在进行删除。public class DelCourseInfo extends CourseInfoString cNum_str = ;public DelCourseInfo() this.setTitle(删除课程信息);this.setResizable(false);cNum.setEditable(false);cN

22、um.setText(请查询课程号);cName.setEditable(false);cTeacher.setEditable(false);cType.setEditable(false);cTime.setEditable(false);cPlace.setEditable(false);/设置运行位置,使对话框居中Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();this.setLocation( (int) (screenSize.width - 400) / 2 ,(int) (screenSize

23、.height - 300) / 2 +45);3.修改课程信息。此部分实现了对课程信息的修改。在修改时先查询出需要修改课程的信息,在进行相应的修改。public class EditCourseInfo extends CourseInfo String cNum_str = ;public EditCourseInfo() this.setTitle(修改课程信息);this.setResizable(false);cNum.setEditable(false);cNum.setText(请查询课程号);cName.setEditable(false);cTeacher.setEditab

24、le(false);cType.setEditable(false);cTime.setEditable(false);cPlace.setEditable(false);/设置运行位置,使对话框居中Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();this.setLocation( (int) (screenSize.width - 400) / 2 ,(int) (screenSize.height - 300) / 2 +45);3.2.3成绩管理模块1.成绩的增加。public class AddGra

25、deInfo extends GradeInfo implements ActionListenerpublic AddGradeInfo() this.setTitle(添加成绩信息);this.setResizable(false);/设置运行位置,使对话框居中Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();this.setLocation( (int) (screenSize.width - 400) / 2 ,(int) (screenSize.height - 300) / 2 +45);2.成绩的

26、修改。public class EditGradeInfo extends GradeInfo implements ActionListenerpublic EditGradeInfo() this.setTitle(修改成绩信息);this.setResizable(false);/设置运行位置,使对话框居中Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();this.setLocation( (int) (screenSize.width - 400) / 2 ,(int) (screenSize.heig

27、ht - 300) / 2 +45);3.2.4 查询模块该模块实现了对学生信息的分类查询,可以通过学号、姓名、性别、学院、专业分别查询相应的学生信;另外还实现了课程信息的分类查询,可以通过课程课程名称和课程教师分别查询相应的课程信息。最后还实现了对成绩的查询。3.2.5 数据库连接/连接数据库的类public class Database private Statement stmt=null;ResultSet rs=null;private Connection conn=null;String sql;String strurl=jdbc:odbc:tls;public Databas

28、e()第四章 设计结果及分析4.1 设计结果 本系统实现了对学生的基本信息和成绩的管理,还可以对学校的所有课程进行管理,最后本系统还实现了对课程信息、学生基本信息和成绩信息的查询。系统主界面如图:图4-1系统主界面4.1.1 学生信息的管理 1. 增加学生信息。图4-2 添加学生信息2. 查询学生信息。按学号查询,如图4-3和4-4;图4-3学号查询图4-4学生信息查询此外,此系统还实现了按姓名、性别、学院、专业的查询。3. 删除学生信息。先查询出要删除的学生的信息,在点击删除,如图4-5所示。图4-5 删除学生信息4.1.2 课程信息的管理1. 添加课程信息。这里的课程编码是按顺序自动生成的

29、,只要输入相应的信息,点击增加即可添加新的课程信息。如图4-6。图4-6 添加课程信息2. 修改课程信息。先查询出需要修改的的课程的信息,然后修改相应的需要修改的地方,点击修改即可完成修改。如图4-7。图4-7 修改课程信息3. 删除课程信息。先点击查询,输入相应的课程号,查询出需要删除的课程信息,确认之后点击删除即可完成删除。如图4-8。图4-8 删除课程信息4.1.3 成绩管理1. 学生选课。一个学生需要首先进行选课才能有成绩,所以首先要进行选课,如图4-9。图4-9 学生选修2. 增加成绩。本系统可以方便的写入学生的成绩,以便统计与查询。如图4-10。图4-10 增加成绩3. 修改成绩。

30、有时候输入成绩可能出错,或者成绩加错了,所以需要修改成绩,本系统实现了此功能,如图4-11。图4-11 修改成绩4.查询成绩。有了成绩当然要可以查询,本系统可以方便的查询任何人的所有成绩。如图4-12和图4-13。图4-12查询成绩图4-13查询成绩结果4.2 设计结果分析基本达到了预期的实验效果,实现了对学校的所有专业信息和课程信息进行管理,对学生的基本信息和成绩进行管理,最后本系统能对专业信息、课程信息、学生基本信息和成绩信息进行查询。不过界面尚做的不够漂亮,而且没有登陆界面,还有很多需要完善的地方。总 结一周的课程设计很快就过去了,课程设计虽然不是很完美,但我觉得我学到了很多东西,我的知

31、识面拓宽了很多,也激起了我学习一些技术的兴趣。通过对做这次课程设计,使我对数据库的应用有了更深一步的认识。又使我掌握了使用各种关系数据库为后台数据库设计一个信息管理系统。在进行课程设计的同时,我遇到了大量问题,使我实际解决问题的能力得以提高。尤其是在做实验时,对JAVA连接数据库还很陌生,但是后来通过上网,去图书馆找资料就很快的搞定了。从中理解了大学对一个人来说,最重要的不是你学了多少知识,而是快速学习的能力,同时我也知道,任何一件事不是只有知道了相关信息才去做他,即使不知道相关信息也可以动手去做。一边学一边做,在信息时代里,这是一个人的生存手段。其实,在编程过程之中,怎样让程序和界面的结合是

32、一个很难处理的问题,因为处理不好就会有时出现触一发而动全身的现象,真的是很难处理,所以在编程开始,就要让程序函数之间不要耦合的太紧密了,这样才能处理好这种情况.总之,这次课程设计受益匪浅,不仅锻炼了我做事坚持不懈的心态,也慢慢地培养了我不懂就查书的好习惯,我的自学能力也有了一定的提高,我更明白了搞计算机这行,要学到真正的技术完全要靠自己,在课堂上只能学到最基本的东西,但这最基本的东西也一定要学好。参考文献1 萨师煊,王珊.数据库系统概论(第三版)M.高等教育出版社,2000年2 邓良松,刘海岩,陆丽娜.软件工程M.西安电子科技大学出版社,2000年3 耿冲. SQL Server 2000数据库管理M. 机械工业出版社,2001年4 赤金,聂松编. JavaApplet实例编程M. 中国水利水电出版社5 蔡翠平.JAVA程序设计M. 北方交通大学出版社

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁