资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,1-,*,北京源智天下科技有限公司,联系方式:,http:/,联系方式:,http:/,北京源智天下科技有限公司,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,JavaSE 6工程开发培训视频,课程安排,开发背景,系统分析,系统设计,数据库设计,开发前的准备工作,教师端主窗体设计,新生报到模块的开发与设计,教师端根本信息查询模块的开发与设计,课程安排续,开课选课设置模块的开发与设计,开发设计课程成绩录入模块,添加课程模块的开发与设计,欢送界面的开发与设计,学生端选课模块的开发与设计,课表显示模块的的开发设计,登录模块的开发与设计,课程安排续,知识点汇总,章末总结,开发背景,随着学校规模的不断扩大,学生数量的不断增长,原来的人工记录的方式,甚至是一般的数据存储管理软件都已经不能够满足学生管理的需要。因为这些传统的管理方式存在太多的缺陷,例如:,1,、维护数据的性能低下,2,、查询信息不方便,3,、选课效率不高,4,、维护成绩信息的工作量大,为了弥补上述的缺陷,便于学生成绩信息的管理与维护,提高管理的效率,从而开发出此学生成绩管理系统,以实现学校的信息化管理。,系统分析,1、教师端功能,可以更改密码。,可以添加学生,并要求填写学生的根本信息。,可以根据学号查询学生根本信息及其成绩。,有权限控制,每个管理员只能管理其所在学院的信息。,可以控制选课的课程范围,并可以控制选课的时间,即可以控制选课的开始与结束。,可以录入成绩,缓存成绩,检查无误后公布成绩。,系统分析续,2、学生端功能,学生可以查看自己的根本信息。,学生可以查看自己的成绩,已修学分和不及格成绩信息,学生端可以进行远程选课,并且可以查看课表。,系统设计,系统分析确定了本系统的最终目标,系统结构如以下图所示:,学生成绩管理系统,教师客户端,学生客户端,教师修改密码,学生根本信息查询,添加新学生,增加新班级,学生成绩查询,开课选项设置,课程成绩录入,查看根本信息,远程选课,学生修改密码,课表显示,成绩查询,不及格成绩查询,系统预览,这一节将对本系统各功能模块进行演示。,数据库设计,该系统包括的实体主要有:学院、专业系、班级、学生、课程等,下面将对其中局部实体的E-R图进行介绍,其它E_R图由于时间所限请自行参阅本书。,数据库设计续,开发前准备工作,上一小节已经对系统中用到的表进行了详细的介绍,下面将介绍如何在MySQL数据库中创立上述表,并预先输入一些数据用于开发过程中的测试,具体操作步骤如下:,(1)启动MySQL,翻开MySQL命令行客户端MySQL Command Line Client。,(2)执行语句“use test;进入数据库test开始对其进行操作,(3)执行SQL语句。,开发前准备工作续,表,2-1,学院表,college,建立本表的,SQL,语句如下:,create table college(colloid char(2)primary key,coll_name varchar(30)not null);,教师端主窗体设计,主窗体是指用户登录后的窗体,对于本系统来说,有两个主窗体,学生端主窗体和教师端主窗体,主窗体采用的是现在最流行的风格,左边是一个树状列表用于导航,右边采用卡片布局显示各个功能模块。,教师端密码修改模块,该模块主要完成教师端修改密码的功能。,新生报到模块的开发与设计,前面一节完成了密码修改模块的开发与设计,其只是一个简单的系统功能模块,从本节开始将进入系统真正的与成绩管理有关的模块,这一节将首先介绍新生报到模块的开发过程,教师端根本信息查询模块的开发与设计,上一节完成了新生报到的功能,报到时填写了一些根本信息,教师端应该可以查询学生的根本信息。本模块将实现根据学号查看学生根本信息的功能。,在介绍该模块之前,首先介绍一个该模块中用到的辅助类GetStuInfo,该类有一个通过学号查询学生根本信息的方法getBaseInfo(String stu_id),其中的参数即学生的学号。返回类型是一个字符串数组,其中包含着学生的所有根本信息,教师端成绩查询模块的开发与设计,刚刚的根本信息中不包含学生的成绩信息,然而成绩是该系统的核心,不用担忧,本节的任务就是完成教师端学生成绩信息的查询,与根本信息查询模块的辅助类相似,这里的辅助类是专门用来查询成绩的,该类主要包括三个方法:,根据学号获得该生所有成绩信息的getAllScore方法、根据学号获得该生所有不及格成绩信息的getFailScore方法、根据学号获得该生所修总学分的getXueFen方法。,开课选课设置模块的开发与设计,该模块主要完成设置选课信息,控制选课时间的功能,是本系统中非常重要的模块,也是开发难度比较大的模块,涉及到的功能比较多,本模块以后的局部就相对简单了,开发设计课程成绩录入模块,系统已经实现了选课设置的功能,但对课程成绩的管理功能还没有实现,本节将完成课程成绩录入的功能,添加课程模块的开发与设计,系统的两个比较大的模块已经完成,已经可以对选课进行控制,并且也可以录入成绩,但此时的课程还是固定的,或者说只能用SQL语句输入,这当然是不可以的,用户是不可能接受的,所以本节将开发一个添加课程的模块。,增加班级模块,由于本功能模块的实现方法及步骤与添加课程模块完全相同,都是向一个表中简单地添加一条记录,所以这里只介绍一下如何将其集成到主窗体中,至于该类的实现细节读者可参看光盘本章源码的,NewClass.java,类,然后仿照添加课程模块进行学习。下面将介绍一下如何将其集成到主窗体中。,欢送界面的开发与设计,到这里教师端的功能模块都已经开发完毕,按照人们的习惯,进入一个系统应该首先看到一个欢送界面,给用户一个比较好的感觉,这一节将介绍如何实现一个简单的欢送界面。,登录模块的开发与设计,根据需要登录窗口需要用户输入以下信息:(1)数据库主机IP(2)主机效劳端口号(3)用户名(4)密码(5)选择登录类型。,知识点汇总,树状列表控件的开发与设计:系统中教师端与学生端的主界面都是使用树状列表控件进行导航,这是现在桌面版应用程序比较流行的样式,通过本章学习,读者也应该能够在以后的开发中恰当地使用树状列表进行功能导航,方便用户的使用。,卡片布局的使用:系统中教师端与学生端显示各功能模块是通过卡片布局完成的,通过本案例,读者应该能够体会到,恰当地使用卡片布局在有些时候会带来事半功倍的效果。,知识点汇总,finally的使用:系统中屡次在finally语句块中关闭数据库连接,这是一个非常好的习惯,因为finally是必须执行的语句,能够保证连接的关闭。,事务的使用:读者应该记得,在增加学生的模块中,有两个工作是必须同时成功,或同时失败的,每添加一个学生,就应该在学生用户表中也增加一条记录,这里系统中使用了事务。非常好的保证了数据的完整性,读者在以后的开发中对类似情况也应该这样处理。,章末总结,通过本章的学习,读者应该对工程的开发流程有了比较深入的了解,对相关知识点的综合应用能力也有了一定的提高,同时也掌握了软件开发中的一些相关技巧,体会到恰当地使用这些技巧会对软件的开发难度及软件性能带来多大的影响。,希望本章案例能够起到抛砖引玉的效果,为读者以后的开发提供思路。如果读者感兴趣的话,可以进一步完善本案例的各项功能。,性格决定命运,专注成就人生,源智天下,
展开阅读全文