《开发高校学生管理系统》由会员分享,可在线阅读,更多相关《开发高校学生管理系统(27页珍藏版)》请在金锄头文库上搜索。
1、n数据共享数据共享n数据独立数据独立n最小冗余最小冗余 n数据安全数据安全 n数据完整数据完整 n灵活性和灵活性和可恢复性可恢复性 数据库技术及网络应用数据库技术及网络应用 章节目录章节目录12.1 需求分析需求分析 12.2 系统功能模块设计系统功能模块设计 第第12章章开发高校学生管理系统开发高校学生管理系统12.3.1设计表设计表结构结构12.3.2设计表设计表关系关系 12.3.3设计数据库设计数据库脚本脚本 12.4.1控制浮动控制浮动面板面板12.4.2工具箱工具箱面板面板12.4.3解决方案解决方案资源管理器资源管理器 12.4.4编辑器编辑器和和设计器设计器12.3 数据库设计
2、数据库设计12.5 工程框架设计工程框架设计12.4 VisualStudio2005集成开发环境介绍集成开发环境介绍12.4.5属性属性面板面板12.5.1系统架构系统架构设计设计12.5.2创建创建工程工程12.5.3母版页母版页(MasterPage)与主题与主题(Theme)12.5.4系统工程文件系统工程文件一览一览12.6 系统功能模块的设计与实现系统功能模块的设计与实现小结小结12.6.1系统用户管理系统用户管理模块模块 12.6.2班级班级管理模块管理模块12.6.3学生基本信息学生基本信息管理模块管理模块12.6.4学生成绩学生成绩管理模块管理模块12.6.5学生选课学生选课
3、管理模块管理模块12.6.6学生专业调整学生专业调整管理模块管理模块12.6.7学生奖惩学生奖惩管理模块管理模块本章提要本章提要本章的主要内容是利用本章的主要内容是利用ASP.NET2.0和和SQLServer2005创建高校学生管理系统创建高校学生管理系统,具体内容包括具体内容包括系统功能模块设计、数据库设计、系统功能模块设计、数据库设计、VisualStudio2005集成开发环境介绍、三层架构、模版与主题集成开发环境介绍、三层架构、模版与主题以及系统各个功能模块的实现以及系统各个功能模块的实现等等等等,旨在使读者,旨在使读者可以熟悉并掌握使用可以熟悉并掌握使用ASP.NET开发网络应用系
4、统开发网络应用系统的完整流程。的完整流程。第第12章章开发高校学生管理系统开发高校学生管理系统12.1 需求分析需求分析 12.2 系统功能模块设计系统功能模块设计 12.3 数据库设计数据库设计12.4 VisualStudio2005集成开发环境介绍集成开发环境介绍12.5 工程框架设计工程框架设计12.6 系统功能模块的设计与实现系统功能模块的设计与实现小结小结12.1需求需求分析分析 随着高校招生规模的不断扩大随着高校招生规模的不断扩大,学生类型的不断学生类型的不断增多,学生的信息量也在不断膨胀,给高校的学生管增多,学生的信息量也在不断膨胀,给高校的学生管理部门也带来了前所未有的工作压
5、力,因此开发一套理部门也带来了前所未有的工作压力,因此开发一套基于校园网的高校学生管理系统基于校园网的高校学生管理系统,实现对高校学生信,实现对高校学生信息的网络信息化管理,可以极大地提高学生管理部门息的网络信息化管理,可以极大地提高学生管理部门的工作效率和工作质量。的工作效率和工作质量。第十二章第十二章开发高校学生管理系统开发高校学生管理系统 第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.2系统功能模块设计系统功能模块设计1、高校学生管理系统总体功能模块、高校学生管理系统总体功能模块系统设计的目标是实现对系统设计的目标是实现对班级、学生信息、学生班级、学生信息、学生成绩、学
6、生选课情况、学生专业调整、学生奖惩信息成绩、学生选课情况、学生专业调整、学生奖惩信息以及系统以及系统的用户进行管理的用户进行管理。2、各模块主要功能、各模块主要功能(1)班级管理模块班级管理模块(2)学生基本信息管理模块学生基本信息管理模块(3)学生成绩管理模块学生成绩管理模块(4)学生选课管理模块学生选课管理模块(5)学生专业调整管理模块学生专业调整管理模块(6)学生奖惩管理模块学生奖惩管理模块(7)系统用户管理模块系统用户管理模块12.3.1设计表结构设计表结构第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.3.2设计表关系设计表关系建立数据表之后,要建立一个表关系图。建立
7、数据表之后,要建立一个表关系图。具体关系具体关系如下:如下:学生表学生表Student使用使用班级表班级表Class的的主键主键ID作为作为外键外键应用;应用;成绩表成绩表Score分别使用分别使用学生表学生表Student、课程表课程表Course的的主键主键ID作为作为外键外键应用;应用;专业调整表专业调整表Tranfer使用使用学生表学生表Student的的主键主键ID作为作为外键外键应用;应用;奖惩记录表奖惩记录表Prize使用使用学生表学生表Student的的主键主键ID作为作为外键外键应用。应用。学生选课表学生选课表分别使用分别使用学生表学生表Student、课程表课程表Cours
8、e的的主键主键ID作为作为外键外键应用。应用。12.3数据库设计数据库设计第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.4 VisualStudio2005集成开发环境集成开发环境介绍介绍VisualStudio是一套完整的开发工具集,是一套完整的开发工具集,VisualStudio产品家族共享一个集产品家族共享一个集成开发环境成开发环境(IDE),包含了大量的功能。对于初学者来说,会觉得,包含了大量的功能。对于初学者来说,会觉得VisualStudio2005的环境非常复杂的环境非常复杂 。12.3.3设计数据库脚本设计数据库脚本略。略。VisualStudio2005集成
9、开发环境中包含许多浮动集成开发环境中包含许多浮动面板(例如解决方案资源管理器、属性、工具箱等),面板(例如解决方案资源管理器、属性、工具箱等),通过通过【视图视图】菜单选择相应的视图命令显示相应的浮动菜单选择相应的视图命令显示相应的浮动面板,还可以自行确定浮动面板的位置和方式。面板,还可以自行确定浮动面板的位置和方式。 第十二章第十二章开发高校学生管理系统开发高校学生管理系统 工具箱是工具箱是VisualStudio2005的重要工具,每一个开发人员都必须对这个工具的重要工具,每一个开发人员都必须对这个工具非常熟悉。工具箱提供了进行非常熟悉。工具箱提供了进行Web应用程序开发所必须的控件。通过
10、工具箱,开发应用程序开发所必须的控件。通过工具箱,开发人员可以方便的进行可视化的窗体设计。工具箱的存在简化了程序设计的工作量,人员可以方便的进行可视化的窗体设计。工具箱的存在简化了程序设计的工作量,提高了工作效率。看不到工具箱的读者可以从提高了工作效率。看不到工具箱的读者可以从【视图视图】菜单中选择菜单中选择【工具箱工具箱】项使项使其显示。展开工具箱中的其显示。展开工具箱中的【标准标准】列表。列表。12.4.1控制浮动面板控制浮动面板12.4.2工具箱面板工具箱面板解决方案资源管理器。用于解决方案资源管理器。用于显示解决方案、解决方案显示解决方案、解决方案的的项目及这些项目中的项。看不到解决方
11、案资源管理器的读者项目及这些项目中的项。看不到解决方案资源管理器的读者可以从可以从【视图视图】菜单中选择菜单中选择【解决方案资源管理器解决方案资源管理器】项使其项使其显示。通过解决方案资源管理器,可以打开文件进行编辑,显示。通过解决方案资源管理器,可以打开文件进行编辑,向项目中添加新文件,以及查看解决方案、项目和项属性。向项目中添加新文件,以及查看解决方案、项目和项属性。第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.4.3解决方案资源管理器解决方案资源管理器第十二章第十二章开发高校学生管理系统开发高校学生管理系统 编辑器和设计器编辑器和设计器是用户进行页面设计和编写代码的是用
12、户进行页面设计和编写代码的“舞台舞台”。编辑器和设计器通常有两个视图,。编辑器和设计器通常有两个视图,图形设计视图形设计视图和源视图图和源视图。允许在网页上指定控件和其他项的位置。允许在网页上指定控件和其他项的位置。可以从可以从工具箱工具箱中轻松拖动控件,并将其置于设计图面上。中轻松拖动控件,并将其置于设计图面上。源视图,用于显示文件或文档的源代码。源视图,用于显示文件或文档的源代码。12.4.4编辑器和设计器编辑器和设计器属性面板是属性面板是VisualStudio2005中另一个重要的工中另一个重要的工具。看不到属性面板的读者可以从具。看不到属性面板的读者可以从【视图视图】菜单中选择菜单中
13、选择【属性面板属性面板】项使其显示。对项使其显示。对Web应用程序开发中的各应用程序开发中的各个控件属性的修改都可以由属性面板来完成。属性面板个控件属性的修改都可以由属性面板来完成。属性面板不仅提供了属性的修改功能,还提供了事件的管理功能。不仅提供了属性的修改功能,还提供了事件的管理功能。属性面板同时采用了两种方式管理属性和方法,按分类属性面板同时采用了两种方式管理属性和方法,按分类方式和按字母顺序方式。读者可以根据自己的习惯采取方式和按字母顺序方式。读者可以根据自己的习惯采取不同的方式。面板的下方还有简单的帮助,方便开发人不同的方式。面板的下方还有简单的帮助,方便开发人员对控件的属性和方法进
14、行操作和修改。员对控件的属性和方法进行操作和修改。 第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.4.5属性面板属性面板12.5工程框架设计工程框架设计第十二章第十二章开发高校学生管理系统开发高校学生管理系统 系统采用采用系统采用采用三层三层架构设计,分别为架构设计,分别为表示层、业务表示层、业务逻辑层和数据访问层逻辑层和数据访问层:12.5.1系统系统架构架构设计设计表示层表示层:应用程序的客户端,通过业务逻辑层访问数据库。:应用程序的客户端,通过业务逻辑层访问数据库。业务逻辑层业务逻辑层:负责数据库与表示层之间的数据传输。:负责数据库与表示层之间的数据传输。数据访问层数据
15、访问层:支持数据访问和存储的数据服务,为业务逻辑层和数据库之间的通信:支持数据访问和存储的数据服务,为业务逻辑层和数据库之间的通信提供渠道。提供渠道。第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.5.2创建工程创建工程1、工程项目简介、工程项目简介(1)Web根据用户的业务需求调用根据用户的业务需求调用BLL里的数据操作里的数据操作方法;方法;(2)BLL调用调用DALFactory,得到程序集指定类的实,得到程序集指定类的实例,完成数据操作方法;例,完成数据操作方法;(3)DALFactory通过读取通过读取Web.Config里的配置信息确定选择使用哪一个数据库提里的配置
16、信息确定选择使用哪一个数据库提供程序,由于系统选用供程序,由于系统选用MicrosoftSQLServer2005作为后台数据库,因此加作为后台数据库,因此加载载SQLServerDAL为数据库访问提供程序;为数据库访问提供程序;(4)SQLServerDAL继承继承IDAL中的接口,并实现其接口方法,使用中的接口,并实现其接口方法,使用ADO.NET数据数据库存取技术实现数据访问;库存取技术实现数据访问;(5)IDAL中被实现的数据操作方法返回给中被实现的数据操作方法返回给BLL;(6)BLL得到的数据访问结果返回给得到的数据访问结果返回给Web层;层;(7)Model在各个项目之间传递数据
17、。在各个项目之间传递数据。 (1)创建网站)创建网站(Web)第十二章第十二章开发高校学生管理系统开发高校学生管理系统 (2)创建其他项目)创建其他项目2、具体创建方法、具体创建方法(3)添加引用)添加引用第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.5.3母版页母版页(MasterPage)与主题与主题(Theme) 1.用母板页(用母板页(MasterPage)集中处理高校学生管理系)集中处理高校学生管理系2.统所有页面的布局。统所有页面的布局。2、建立并应用主题(、建立并应用主题(Theme)分别将管理员界面和学生用户界面的整体布局创建成分别将管理员界面和学生用户界面的
18、整体布局创建成母板页母板页AdminMasterPage.master和和StudentMasterPag-e.master,再把它们分配给各个内容页面,再把它们分配给各个内容页面,使高校学生使高校学生管理系统保持整体布局上的统一管理系统保持整体布局上的统一。Theme用于标准化高校学生管理系统所有页面的外观和操作方式。其中用于标准化高校学生管理系统所有页面的外观和操作方式。其中Skin用用于定义于定义Web控件的属性,如背景色、前景色、文字属性和图标等等;层叠式样式表控件的属性,如背景色、前景色、文字属性和图标等等;层叠式样式表(CSS)用于定义用于定义HTML元素的属性,如表格的属性和页面
19、背景等等。只需将页面元素的属性,如表格的属性和页面背景等等。只需将页面的的【StyleSheetTheme】属性和属性和【Theme】属性设置成所建立的主题名称即可。属性设置成所建立的主题名称即可。第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.5.4系统工程文件一览系统工程文件一览略。略。用户管理的功能包括用户管理的功能包括用户注册、登录、修改密码、退出系统以及管理员添加用户注册、登录、修改密码、退出系统以及管理员添加和删除用户和删除用户。本节将详细介绍系统。本节将详细介绍系统三层三层架构的具体实现。架构的具体实现。12.6系统功能模块的设计与实现系统功能模块的设计与实现1.
20、基本思路基本思路2.用户管理模块的基本思路是利用用户管理模块的基本思路是利用ASP.NET2.0成员管理和角色管理两个内置系成员管理和角色管理两个内置系3.统(下文统称统(下文统称Membership)实现基本的注册、登录、注销、修改密码等功能,因)实现基本的注册、登录、注销、修改密码等功能,因4.此采用此采用Membership数据表存放用户名、密码、注册时间等信息,配合使用数据表存放用户名、密码、注册时间等信息,配合使用Stude5.nt数据表存放用户的详细信息,如真实姓名、所属班级等。数据表存放用户的详细信息,如真实姓名、所属班级等。 12.6.1系统用户管理模块系统用户管理模块第十二章
21、第十二章开发高校学生管理系统开发高校学生管理系统 2、前期准备、前期准备Membership默认使用默认使用SQLServer2005Express版本的本地版本的本地ASPNETDB.MDF文件作为数据源,其中包文件作为数据源,其中包含若干数据表、存储过程和视图。这种数据存储方式不含若干数据表、存储过程和视图。这种数据存储方式不方便对系统的数据库进行统一的管理,因此需将系统的方便对系统的数据库进行统一的管理,因此需将系统的Membership数据源配置到数据库服务器。配置方法是,数据源配置到数据库服务器。配置方法是,运行运行%systemroot%Microsoft.NETFramework
22、v2.x目录下的目录下的aspnet_regsql工具,根据它的向导,将数据工具,根据它的向导,将数据库表和存储过程指定到相应的服务器和高校学生管理系库表和存储过程指定到相应的服务器和高校学生管理系统的数据库中。统的数据库中。第十二章第十二章开发高校学生管理系统开发高校学生管理系统 3、具体实现、具体实现(1)学生信息实体类)学生信息实体类StudentStudent类位于类位于StudentManagement.Model命名空命名空间下。间下。Student类包含类包含8个属性,分别对应系统数据库中的个属性,分别对应系统数据库中的Student数据表的各个字段,数据表的各个字段,作为一个数
23、据容器在各层中作为一个数据容器在各层中传递数据。传递数据。 (2)学生信息操作接口类)学生信息操作接口类IStudentIStudent接口类位于接口类位于StudentManagement.Interface命名空间下。命名空间下。IStudent接接口类共定义了口类共定义了7个方法,分别是,查询所有学生信息个方法,分别是,查询所有学生信息ShowAllStudent、按、按ID查询学查询学生信息生信息SelStudentByID、按班级、按班级ID查询学生信息查询学生信息SelStudentByClassID、按学号、按学号查询学生信息查询学生信息SelStudentByStudentNo
24、、添加学生信息添加学生信息AddStudent、按、按ID更新更新学生信息学生信息UpdStudentByID、按、按ID删除学生信息删除学生信息DelStudentByID。第十二章第十二章开发高校学生管理系统开发高校学生管理系统 (3)学生信息数据访问实现类)学生信息数据访问实现类StudentDALStudentDAL类位于类位于StudentManagement.SQLSer-verDAL命名空间下。命名空间下。StudentDAL类实现类实现IStudent接口类中的接口类中的7个方法,用以实现具体的数据访问操作。个方法,用以实现具体的数据访问操作。 (4)加载数据库访问程序集的类加
25、载数据库访问程序集的类DALFactoryDALFactory类位于命名空间类位于命名空间StudentManagement.Factory下。下。 (5)学生信息业务逻辑类)学生信息业务逻辑类StudentBLLStudentBLL类位于命名空间类位于命名空间StudentManagement.BLL下。下。StudentBLL类负类负责实现表示层与数据访问层间的交互,其中包括责实现表示层与数据访问层间的交互,其中包括8个方法。个方法。(6)表示层(见书)表示层(见书)第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.6.2班级管理模块班级管理模块班级管理模块的功能包括班级管理
26、模块的功能包括添加、修改、删除和查询添加、修改、删除和查询班级信息。班级信息。2、查询和管理班级信息页面、查询和管理班级信息页面SelClass.aspx1、添加班级页面、添加班级页面AddClass.aspx第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.6.3学生基本信息管理模块学生基本信息管理模块学生基本信息管理模块学生基本信息管理模块的功能包括的功能包括按班级、学号查按班级、学号查询学生以及编辑学生信息询学生以及编辑学生信息。此模块用到的学生信息实体。此模块用到的学生信息实体类类Student、学生信息操作接口类、学生信息操作接口类IStudent、学生信息、学生信息数
27、据访问实现类数据访问实现类StudentDAL、加载数据库访问程序集、加载数据库访问程序集的类的类DALFactory、学生信息业务逻辑类、学生信息业务逻辑类StudentBLL在在12.6.1节已经介绍过,不再赘述。节已经介绍过,不再赘述。 第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.6.4学生成绩管理模块学生成绩管理模块学生成绩管理模块的功能包括学生成绩管理模块的功能包括添加、修改、删除、查添加、修改、删除、查询(按学号,按课程查询)学生成绩询(按学号,按课程查询)学生成绩。此模块用到的学生。此模块用到的学生成绩实体类成绩实体类Score、学生成绩操作接口类、学生成绩操
28、作接口类IScore、学生成、学生成绩数据访问实现类绩数据访问实现类ScoreDAL、加载数据库访问程序集的、加载数据库访问程序集的类类DALFactory、学生成绩业务逻辑类、学生成绩业务逻辑类ScoreBLL与与12.6.1节所介绍的原理一致,实现相似,不再赘述。节所介绍的原理一致,实现相似,不再赘述。1、添加学生成绩页面、添加学生成绩页面AddScore.aspx2、查询和管理学生成绩页面、查询和管理学生成绩页面SelScore.aspx第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.6.5学生选课管理模块学生选课管理模块学生选课管理模块的功能包括学生选课管理模块的功能包
29、括管理员添加、修改、管理员添加、修改、删除、删除、查询课程,审批学生选课查询课程,审批学生选课;学生选课、查询所学生选课、查询所选课程选课程。此模块用到的课程信息实体类。此模块用到的课程信息实体类Course和学生和学生选课实体类选课实体类SelCourse、课程信息操作接口类、课程信息操作接口类ICourse和学生选课操作接口类和学生选课操作接口类ISelCourse、课程信息数据访、课程信息数据访问实现类问实现类CourseDAL和学生选课数据访问实现类和学生选课数据访问实现类SelC-ourseDAL加载数据库访问程序集的类加载数据库访问程序集的类DALFactory、课程信息业务逻辑类
30、课程信息业务逻辑类CourseBLL和学生选课业务逻辑和学生选课业务逻辑类类SelCourseBLL与与12.6.1节所介绍的原理一致,实现节所介绍的原理一致,实现相似,不再赘述。相似,不再赘述。第十二章第十二章开发高校学生管理系统开发高校学生管理系统 1.添加课程页面添加课程页面AddCourse.aspx2、查询和管理课程页面、查询和管理课程页面SelCourse.aspx3、学生选课管理页面、学生选课管理页面AdminSelCourse.aspx4、学生选课页面、学生选课页面AddSelCourse.aspx第十二章第十二章开发高校学生管理系统开发高校学生管理系统 12.6.6学生专业调
31、整管理模块学生专业调整管理模块学生专业调整管理模块的功能包括学生专业调整管理模块的功能包括学生提交专业调学生提交专业调整申请、查询专业调整结果;管理员查询、删除和审批整申请、查询专业调整结果;管理员查询、删除和审批专业调整专业调整。此模块用到的学生专业调整实体类。此模块用到的学生专业调整实体类Transfer、学生专业调整操作接口类学生专业调整操作接口类ITransfer、学生专业调整数据、学生专业调整数据访问实现类访问实现类TransferDAL、加载数据库访问程序集的类、加载数据库访问程序集的类DALFactory、学生专业调整业务逻辑类学生专业调整业务逻辑类TransferBLL与与12
32、.6.1节所介绍的原理一致,实现相似,不再赘述。节所介绍的原理一致,实现相似,不再赘述。第十二章第十二章开发高校学生管理系统开发高校学生管理系统 1.学生专业调整申请页面学生专业调整申请页面AddTransfer.aspx2、管理员查询和管理专业调整页面、管理员查询和管理专业调整页面SelTransfer.aspx学生奖惩管理模块的功能包括学生奖惩管理模块的功能包括添加、修改、删除、查询学生奖惩信息添加、修改、删除、查询学生奖惩信息。此模。此模块用到的学生奖惩实体类块用到的学生奖惩实体类Prize、学生奖惩操作接口类、学生奖惩操作接口类IPrize、学生奖惩数据访问、学生奖惩数据访问实现类实现
33、类PrizeDAL、加载数据库访问程序集的类、加载数据库访问程序集的类DALFactory、学生奖惩业务逻辑、学生奖惩业务逻辑类类PrizeBLL与与12.6.1节所介绍的原理一致,实现相似,不再赘述。节所介绍的原理一致,实现相似,不再赘述。12.6.7学生奖惩管理模块学生奖惩管理模块第十二章第十二章开发高校学生管理系统开发高校学生管理系统 1.添加学生奖惩页面添加学生奖惩页面AddPrize.aspx2、查询和管理学生奖惩页面、查询和管理学生奖惩页面SelPrize.aspx本章讲解了使用本章讲解了使用ASP.NET2.0和和SQLServer2005开发高校学生管理系统的详开发高校学生管理系统的详细过程。细过程。通过本章的学习,读者可以熟悉并掌握包括通过本章的学习,读者可以熟悉并掌握包括系统功能设计、数据库设计系统功能设计、数据库设计与实现、与实现、系统三层架构设计与实现、模版与主题等一整套开发网络应用系统的完系统三层架构设计与实现、模版与主题等一整套开发网络应用系统的完整流程整流程。 小结小结