您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 人事档案/员工关系 > JAVA学生信息管理系统
计算机科学与技术学院课程设计成绩单课程名称:数据库系统原理指导教师:袁嵩姓名丁勇性别男学号200922146159班级软件091综合成绩成绩等级程序运行情况(占总成绩20%)□能正确运行□基本能正确运行□能运行但结果不完善(20分)(15分)(10分)程序功能的完善程度(占总成绩10%)□完善□基本完善□不完善(10分)(8分)(5分)程序结构的合理性(占总成绩10%)□合理□基本合理□不太合理(10分)(8分)(5分)对问题的答辩情况(占总成绩40%)□概念正确有创新□能正确回答所有问题□基本能正确回答(40分)(35分)(30分)□部分问题回答概念不清晰(20分)学生的工作态度与独立工作能力(占总成绩10%)□工作态度认真能独立完成任务□工作态度认真但独立性较差(10分)(8分)□工作态度基本认真但缺乏独立性(5分)设计报告的规范性(占总成绩10%)□符合规范□基本符合规范□规范性较差(10分)(8分)(5分)优秀:90分~100分良好:80分~89分中等:70~79分及格:60~69分不及格0分~59分武汉科技大学计算机科学与技术学院制表2计算机科学与技术学院课程设计报告课程名称:数据库系统原理专业:软件工程班级:09级01班学号:200922146159姓名:丁勇指导老师:袁嵩3Java学生信息管理系统设计与实现目录1引言……………………………………………………………………………………………………….11.1课题背景辑意义………………………………………………………………………….11.2课题开发技术选择…………………………………………………………………..11.3课题实现技术的简要说明………………………………………………………….22系统需求分析……………………………………………………………………………………..32.1功能需求分析…………………………………………………………………………….33学生信息管理系统设计……………………………………………………………………….43.1数据模型分析与设计………………………………………………………………….43.2结构设计与结构功能图.…………………………………………………………….63.2.1结构设计…………………………………………………………………………….63.2.2功能结构图……………………………………………………………………….64详细设计…………………………………………………………………………………………………85系统调试常见错误…………………………………………………………………………………17总结…………………………………………………………………………………………………18参考文献…………………………………………………………………………………………………1811引言由于学生信息的冗长与繁琐,所以它的管理问题带来的麻烦和不方便也随之而来。所以开发一个适合学校的、便于管理学生信息的管理系统是十分重要的。1.1课题背景及意义为了充分实现素质教育,多方面发展学生的兴趣爱好,大部分学校都设立了全校范围的内的选修课。学生可以根据自己的兴趣和特长,选择自己喜欢的课程。由于高等学校的快速发展,高校的规模也越来越大,学生数量和课程量都迅速地增长,管理上的手工操作不仅仅会耗费学生与工作人员大量的时间和精力,效率以及准确性也很低。如何使同学们方便、快捷、准确地选课,以及老师们对学生的相关信息的管理,已经成为一个重要的问题。利用计算机进行学生信息管理,不仅能够保证准确、无误、快速输出,而且还可以利用计算机对有关信息进行查询,检索迅速、查找方便、可靠性高、存储量大、保密性好。要科学地实现信息化管理,开发一个适合学校的,能够进行信息存储、查询、修改等功能的信息管理系统是十分重要的。本课题就是针对便于学生信息管理的问题而设计的一个管理系统。1.2课题开发技术选择本课题设计主要运用的技术有两个:java项目开发和Access对数据库的操作。这里主要介绍本课题为什么选用这两个开发技术:⑴首先了解一下Java语言特点Java是一种跨平台,适合于分布式计算环境的面向对象编程语言。具体来说,它具有如下特性:简单性、面向对象、分布式、解释型、可靠、安全、平台无关、可移植、高性能、多线程、动态性等。2⑵Access数据库的特点●无范式要求,可根据实际系统需求构造数据库。●采用标准的SQL结构化查询语言。●具有字符界面和图形界面,易于开发。综上所述,选择java作为开发语言,Access作为数据库开发工具是个不错的选择。1.3课题实现技术的简要说明本课题主要运用了java图形编程和oracle数据库的操作。Java图形编程给用户提供了一个直观、易于与用户进行交互的图形界面。在图形编程中,运用了大量的java.swing包中的类,之所以选择swing包中的类而不选java.awt包中的类,主要是swing包中的类能给用户提供更好的观感。oracle数据库的操作这部分内容分成三部分来实现:首先,编写对数据库操作的类,包括:连接数据库、执行sql语句、关闭数据库连接等。其次,编写一个用于对学生信息进行数据库操作的类,包括:学生信息的增加、修改、删除和查询等。最后,编写一个用于对课程相关信息进行数据库操作的类,包括:对课程信息的增加、修改、删除、查询等等。通过结合图形编程和数据库编程,从而基本上实现了学生信息管理的基本功能,由于本人技术上的不足,难免有些地方需要改进,这些存在的问题都将成为本人前进的动力,并在日后更加完善本课题的设计。32系统需求分析2.1功能需求分析本课题根据学生信息管理综合分析,便出于方便管理考虑,将学生信息管理系统的功能总结起来,共需要实现以下几个方面功能:①管理学生信息管理所有学生的基本信息,对学生信息的操作包括添加、修改、删除等;可以根据各种条件查询出需要的信息,比如修改,可以通过学生学号查询出学生的基本信息,然后通过对需要修改项进行修改并保存修改后的结果存入数据库的学生表中。②管理课程信息管理所有课程的基本信息,包括对课程信息的添加、修改、删除等操作;可以根据各种条件查询出需要的信息,并对相应的信息进行操作。比如修改和删除,可以通过学生的学号查询出学生的相应课程信息,对相应的课程进行修改、删除操作。③学生选课与成绩根据学生的学号进行选课,登记所选课程的成绩;可以根据学号查询出选课信息与成绩。通过以上功能的设计与实现,并实现学生信息管理系统的基本功能。当然在实际的学生信息管理系统中,其功能要比本课题的多的多,也复杂的多,本课题仅简单的实现了一个学生管理系统的设计与实现的流程。43学生信息管理系统设计3.1数据模型分析与设计数据库模型描述了在数据库中结构化和操纵数据的方法,模型的结构部分规定了数据如何被描述(例如树、表等);模型的操纵部分规定了数据的添加、删除、显示、维护、打印、查找、选择、排序和更新等操作。数据库模型的分类:分层模型、关系模型、网络模型和对象模型。本课题选择的关系模型,关系模型是目前最重要的一种数据模型。本课题的关系数据模型的数据结构可分为三个表来表示:学生信息表(student)、课程信息表(course)、学生选课表(sc);学生信息表用于记录学生的基本信息,如表3-1;课程信息表用于记录课程的基本信息,如表3-2;学生选课表如下表3-3。这三个表对应的E-R图分别是:图3.1学生信息E-R图;图3.2课程信息E-R图;图3.3学生选课E-R图;如下图。表3-1学生信息表(student)名称字段名称数据类型主键非空学号snumchar(10)yesyes姓名snamevarchar2noyes性别ssexchar(2)nono出生日期sbirthchar(8)nono入学年份syearchar(4)nono表3-2课程信息表(Course)名称字段名称数据类型主键非空课程编号cnumchar(4)yesyes课程名称cnamevarchar2noyes5授课老师cteachervarchar2nono表3-3学生选课表(SC)名称字段名称数据类型主键非空学号snumchar(10)yesyes课程编号cnumchar(4)yesyes成绩gradenumber(4,1)nono学生出生日期学号姓名性别入学年份图3.1学生信息E-R图选课表学号课程编号成绩图3.3学生选课E-R图6课程课程编号上课地点课程名称授课教师图3.2课程信息E-R图3.2结构设计与结构功能图3.2.1结构设计根据对系统进行需求分析,本系统将分为4个模块:●学生管理管理学生基本信息,包括个人信息的添加、修改、删除以及选课信息的添加。●课程管理管理课程的基本信息,包括课程信息的添加、修改和删除。●成绩管理管理学生选课的成绩信息,包括成绩的登记与修改。●信息查询查询已经登记的信息,包括学生的基本信息、课程的基本信息与成绩信息。3.2.2功能结构图学生管理系统功能结构如图3.4所示。7学生管理系统学生管理课程管理成绩管理信息查询添加增加删除学生查询增加课程查询修改修改修改删除学生选课成绩查询按姓名查询按学号查询按课程名称查询查询所有科目成绩按授课老师查询图3.4学生管理系统功能结构图84详细设计该系统由6个模块构成,包括学生管理系统主界面模块、学生信息管理模块、课程信息管理模块、成绩信息管理模块、信息查询模块和数据操作模块。下面分别加以叙述:①学生管理系统主界面模块学生管理系统主界面模块包括StuMS.java和StuMain.java两个文件。StuMS是学生管理系统的主运行类,其中有运行整个程序的main方法,该文件生成了StuMain类的一个实例,从而生成了学生管理系统的界面,如图4.1所示。StuMain类继承自JFrame类,实现了ActionListener接口,他有一个不带参数的构造方法StuMain(),用来生成StuMain的实例。StuMain类将所有功能集中到菜单栏中,并通过调用其他模块来实现学生管理系统的各个功能。importjavax.swing.UIManager;importjava.awt.*;/*学生管理系统运行主类*/publicclassStuMS{图4.1学生管理系统主界面booleanpackFrame=false;/***构造函数*/9publicStuMS(){StuMainframe=newStuMain();if(packFrame){frame.pack();}else{frame.validate();}//设置运行时窗口的位置��DimensionscreenSize=Toolkit.getDefaultToolkit().getScreenSize();DimensionframeSize=frame.getSize();if(frameSize.heightscreenSize.height){frameSize.height=screenSize.height;}if(frameSize.widthscreenSize.width){frameSize.width=screenSize.width;}frame.setLocation((screenSize.width-frameSize.width)/2,(screenSize.height-frameSize.height)/2);frame.setVisible(true);}publicstaticvoidmain(String[]args){//设置运行风格try{UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());}catch(Exceptione){e.printStackTrace();}newStuMS();}}10②学生信息管理模块学生信息管理模块主要由StuInfo.java、AddStuInfo.java、EdiStuInfo.java、DelStuInfo.java
本文标题:JAVA学生信息管理系统
链接地址:https://www.777doc.com/doc-1915293 .html