7项目实战三层体系结构应用学员管理系统1 ppt课件_第1页
7项目实战三层体系结构应用学员管理系统1 ppt课件_第2页
7项目实战三层体系结构应用学员管理系统1 ppt课件_第3页
7项目实战三层体系结构应用学员管理系统1 ppt课件_第4页
7项目实战三层体系结构应用学员管理系统1 ppt课件_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ACCP V4.0三层体系结构的应用学员管理系统1(后台)ACCP V4.0三层结构模式q教员讲解三层结构模式、优缺点30分钟)q教员讲解三层结构在.NET工程中的体现20分钟)ACCP V4.0问题描述q一个学校需要一个学生管理系统。分以下功能:q管理班档案q管理学生档案q学校开了多门课程,一个班一个学期可能上其中几门课程,对课程进行管理q管理学生的考试成绩q 留意:本项目案例的大部分代码已经给出,并作为示范代码提供阅读,要求编码完成的功能只是以上功能的一部分。 ACCP V4.0问题分析-1从需求分析抽取出对象班:班名称、入学年份学生:学号、姓名、性别、出生年月、所属班科目:科目名称课程:

2、科目、班、开课日期、结课日期成果:学生、课程、得分ACCP V4.0问题分析-2q已经完成的功能有:q建立这个班的档案信息、查询班的档案信息和更新版档案信息q建立学生信息、查询学生信息、删除学生信息和修改学生信息q建立科目信息、查询科目信息、修改和删除科目信息q给一个班建立一门课程,修改课程信息,查询一个班的课程,查询学生的课程q ACCP V4.0问题分析-3q需要编码完成的功能:q录入和更改学生的考试成绩q分班级、课程、学生查询学生成绩q删除一个班的信息,同时删除这个班的相关信息ACCP V4.0难点解析 -1 q 数据库操作类(DataBaseOperate),这个类由别的成员编写,学员

3、要读懂并能调用这个类q 事务的实现及调用q通过两个函数来实现事务StartTransation()和Commit()q 事务失败后回滚(RollBack)的实现q注意Excute方法和Search方法Catch块里面的内容q 构造函数的重载q 析构函数的编写q在析构函数里释放数据库连接等资源ACCP V4.0难点解析 -2 q复杂的SQL语句的写法q复杂的SQL语句采取拼字符串的方式编写q多表关联的SQL语句的写法q编写Scores类SelectScores方法,可以根据学生ID、课程ID、班级ID的任意组合作为查询条件编写SQL语句ACCP V4.0难点解析 -3q业务(Business)层

4、执行事务处理q声明并初始化DataBaseOperate对象q把DataBaseOperate对象作为参数传入数据访问层的对象qDataBaseOperate对象开始事务处理q数据访问层对象执行各步数据库操作qDataBaseOperate对象提交事务q如果捕获到错误,DataBaseOperate对象事务自动回滚q执行完毕,析构各对象ACCP V4.0阶段划分q 第一阶段、教员讲解DataBaseOperate 类20分钟)q 第二阶段、教员讲解数据访问层Scores对象20分钟)q 第三阶段、学员编写Scores对象60分钟)q 第四阶段、学员在业务(Business)层StudentSy

5、stem类中增加一个方法用来删除班级30分钟)q 第五阶段、建立一个WinForm的测试工程,测试前几个阶段编写的代码功能50分钟)ACCP V4.0第一阶段q第一阶段 q教员给出已经写好的代码(没有Scores类和StudentSystem的DeleteClass方法)q讲解整个工程的结构以及各层的注意事项q讲解DataBaseOperate的写法以及事务的实现q学员阅读并调试代码ACCP V4.0阶段检查q检查学员第一阶段代码是否调试通过ACCP V4.0第二阶段q第二阶段 教员讲解Scores类ACCP V4.0第三阶段q第二阶段 学员编写Scores类q要求学员自己动手编码,教员在编码

6、的过程中解答学员提出的问题ACCP V4.0阶段检查q检查学员第三阶段的编码结果q教员点评ACCP V4.0第三阶段标准代码演示q演示第三阶段实现的标准代码public bool InsertScore(int iCourseId,int iStudentId,float fScore)string sSql = select Count(*)+ from student a+ ,course b+ ,class c+ where a.ClassId = b.ClassId+ and b.ClassId = c.ClassId+ and a.StudentId = + iStudentId.T

7、oString()+ and b.CourseId = + iCourseId.ToString();DataSet dataSet = new DataSet();trydataSet = cDbObject.Search(sSql, Course);catch(Exception e)throw(e);if(dataSet.TablesCourse.Rows00.ToString() = 0)throw(new ApplicationException(该学生没有此门课程。);sSql = insert Score(+ CourseId+ ,StudentId+ , Score+ )+ v

8、alues(+ iCourseId.ToString()+ , + iStudentId+ , + fScore.ToString()+ );trycDbObject.Execute(sSql);catch(Exception e)throw(e);return true;ACCP V4.0第四阶段q第四阶段 学员编写业务(Business)层StudentSystem类q留意: 删除班级的方法DeleteClass(int iClassId)需要在事务下删除班的学生、学生成绩和班的课程。q要求学员自己动手编码,教员在编码的过程中解答学员提出的问题ACCP V4.0阶段检查q检查学员第四阶段的

9、编码结果q教员点评ACCP V4.0第四阶段标准代码演示q演示第四阶段实现的标准代码public bool DeleteClass(int iClassId)DataBaseOperate dbo = new DataBaseOperate();Students students = new Students(dbo);Classs classs = new Classs(dbo);Courses courses = new Courses(dbo);Scores scores = new Scores(dbo);trydbo.StartTransation();scores.DeleteSc

10、ore(-1,-1,-1,iClassId);students.DeleteStudent(-1,iClassId);courses.DeleteCourse(-1,-1,iClassId);classs.DeleteClass(iClassId);dbo.Commit();catch(Exception e)dbo.CloseDataBase();dbo.Dispose();classs.Dispose();students.Dispose();throw( new ApplicationException(操作数据库发生错误: + e.Message);dbo.CloseDataBase();dbo.Dispose();classs.Dispose();students.Dispose();return true;ACCP V4.0第五阶段q建立一个WinForm的测试工程,测试前几个阶段编写的代码功能q要求学员自己动手编码,教员在编码的过程中解答学员提出的问题ACCP V4.0阶段检查q检查学员第五阶段的编码结果q教员点评ACCP V4.0第五阶段

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论