三层架构ADONET数据库编程课件

PPT
  • 阅读 120 次
  • 下载 0 次
  • 页数 24 页
  • 大小 1.415 MB
  • 2022-11-24 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档15.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
三层架构ADONET数据库编程课件
可在后台配置第一页与第二页中间广告代码
三层架构ADONET数据库编程课件
可在后台配置第二页与第三页中间广告代码
三层架构ADONET数据库编程课件
可在后台配置第三页与第四页中间广告代码
三层架构ADONET数据库编程课件
三层架构ADONET数据库编程课件
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 24
  • 收藏
  • 违规举报
  • © 版权认领
下载文档15.00 元 加入VIP免费下载
文本内容

【文档说明】三层架构ADONET数据库编程课件.ppt,共(24)页,1.415 MB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-45577.html

以下为本文档部分文字说明:

三层架构ADONET数据库编程第八章三层架构的ADO.NET数据库编程本章任务•能够理解和掌握三层架构中每层的功能和各层之间的逻辑关系•能够搭建三层架构软件开发框架•能基于三层架构实现数据增、删、改、查操作•能使用OOP思想实现三层架构ort-

zc/scnzflknzg0838mlj5sbjlight-ksjnxrttopbrightnesshd8gohd88gosj93oemgc189288hzp580yjoemoemdgxcdnpxskfjkoemdgzhongtezc

yanjigzzg-nskskf-ztnsk-ztfag-ztzhongtezcntn-zt189286xcdnpxdgxcdndgxcpxxcwxpxxunchi-pxoemfy0759mzlczx18

8189287nizifnmynzfmynzfmynzgmynzgmynzgmljsgfmljnzf0838mlj任务8.1“学生信息管理系统”项目——搭建三层架构开发框架•在VisualStudio2019中创建“学生信息管理系统”项目的解决方案。在

解决方案中分别建立UI层项目、BLL层类库项目和DAL层类库项目,并添加各层之间的依赖关系,完成三层架构开发框架的搭建。分四步实现三层架构的设计1、搭建表示层2、搭建业务逻辑层3、搭建数据访问层4、建立各层间的依赖关系任务8.1“学生信息管理系统”项目——搭建三层架

构开发框架ort-zc/scnzflknzg0838mlj5sbjlight-ksjnxrttopbrightnesshd8gohd88gosj93oemgc189288hzp580yjoemoemdgxcdnpx

skfjkoemdgzhongtezcyanjigzzg-nskskf-ztnsk-ztfag-ztzhongtezcntn-zt189286xcdnpxdgxcdndgxcpxxcwxpxxunchi-pxoemfy0759

mzlczx188189287nizifnmynzfmynzfmynzgmynzgmynzgmljsgfmljnzf0838mlj搭建表示层在VisualStudio2019的IDE开发环境中,选择“文件”→“新

建”→“项目”命令,创建一个新项目,在弹出的“新建项目”对话框中选择项目类型为“VisualC#”,模板为“Windows应用程序”,填写项目名称为“StudentInfo”,同时在“解决方案”下拉列表框中选择“创建解决方案”,并选择“创建解决方案的目录”复选框

,如图所示搭建业务逻辑层在VisualStudio2019的IDE开发环境中,选择“文件”→“新建”→“项目”命令,在弹出的“新建项目”对话框中选择项目类型为“VisualC#”,模板为“类库”,填写项目名称为“StudentInfoBLL”,同时在“解决方案”下拉列表框中选择“添入解决方案”,

如图所示搭建数据访问层及建立各层依赖关系创建数据访问层的步骤与创建业务逻辑层类似,只是需要重新填写项目名称为“StudentInfoDAL”,其它的操作步骤和选项与创建业务逻辑层完全一样。在“解决方案资源管理器”中,右键单击表

示层(StudentInfo项目)的“引用”,选择“添加引用”命令,在弹出的“添加引用”对话框中选择“项目”选项卡,选中项目名称“StudentInfoBLL”,单击“确定”,如图所示。在建立了表示层对业务逻辑层的引用后,在表示层的引用目录下就会出现业

务逻辑层项目的名称,如图所示。ort-zc/scnzflknzg0838mlj5sbjlight-ksjnxrttopbrightnesshd8gohd88gosj93oemgc189288hzp580yjoemoemdgxcdnpxskfjkoemdgzhongtezcyanjig

zzg-nskskf-ztnsk-ztfag-ztzhongtezcntn-zt189286xcdnpxdgxcdndgxcpxxcwxpxxunchi-pxoemfy0759mzlczx188189287nizifnm

ynzfmynzfmynzgmynzgmynzgmljsgfmljnzf0838mlj使用三层架构的意义我们可以通过到电器商城购物这一生活中的场景来理解三层架构在软件开发中的优势。这里可以把电器商城看作一个整体,它

包括商品导购员、收银员和仓库管理员三类角色。当一名顾客到超市购买商品时,商城将以如下的流程为顾客提供服务:•(1)导购员接待顾客,根据顾客要求购买商品的型号填写单据,然后将填写好的单据交给收银员;•(2)收银员根据导购员的单

据向顾客收取相应的费用,打印出货单,然后将出货单交给仓库管理员申请出货;•(3)仓库管理员根据收银员提交的出货单从仓库对应的商品存放位置,取出货物交给导购员,然后导购员将商品交给客户。ort-zc/scnzflknzg0

838mlj5sbjlight-ksjnxrttopbrightnesshd8gohd88gosj93oemgc189288hzp580yjoemoemdgxcdnpxskfjkoemdgzhongte

zcyanjigzzg-nskskf-ztnsk-ztfag-ztzhongtezcntn-zt189286xcdnpxdgxcdndgxcpxxcwxpxxunchi-pxoemfy0759mzlczx188189287nizifnmy

nzfmynzfmynzgmynzgmynzgmljsgfmljnzf0838mlj三层间的依赖关系微软推荐的三层式结构,从下至上分别为:数据访问层、业务逻辑层和表示层,各层之间相互依赖,相互协作来实现软件的各项功能,其体系结构如左图所示,三层之间

的依赖关系和数据传递方向如右图所示。基于三层架构实现数据增删改查在三层架构下实现对数据库中数据的访问和操作,可以使用ADO.Net来实现。表示层将用户输入的数据或数据查询请求发送给业务逻辑层,业务逻辑层对用户的输入数据进行校验和处理,然后将数据发送给数据访问层,由数据访问层通

过Sql语句或调用数据库的存储过程来实现数据的操作,并将操作结果以DataSet、DataTalbe或DataReader等数据集的方式返回给业务逻辑层,当业务逻辑层收到响应的数据集后,根据用户的要求(如筛选条件或业务规则)对数据集中的数据进行处理,然后把处理后的数据集返

回给表示层,最后由表示层的后台代码对数据集进行解析,显示在窗体相应的数据显示控件上,整个过程如图所示任务8.2“学生信息管理系统”项目——用三层架构实现学生信息查询设计“学生信息管理系统”窗体的主界面。用户可以在工具栏的下拉列表框中选择

查询条件是按学号查询还是按姓名查询,在文本框中输入相应的信息后,点击“查找”按钮,在数据库中查询满足条件的数据,并显示在窗体上的DataGridView控件上。如果未设置查询条件,则返回数据库中所有学生的信息任务8

.2.1“学生信息管理系统”项目——用三层架构实现学生信息查询使用三层架构开发应用系统时,首先应根据需求设计表示层的用户界面,然后对系统需要实现的功能进行认真分析,根据功能需求先设计规划数据访问层的类及相

应的方法,再设计业务逻辑层的类,最后完成表示层后台代码。根据本节任务的功能需求,在数据访问层我们设计一个用于对数据库中表StudentInfo操作的类StudentInfoDB,并为该类设计三个方法:GetStuInfoByStuId、GetStuInfoByName和

GetStuInfoList,分别用于实现按学号查询、按姓名查询和返回所有学生信息三个功能,其返回值类型均为DataTable。在业务逻辑层设计类StuInfoManager为数据访问提供服务,并为其设计方法GetStuInfo,方法的参数与返回值类型如下:DataTabl

eGetStuInfo(stringcondition,stringkeywords),其中condition为查询条件,keywords为查询条件的值。整个功能实现的时序图如图所示。搭建框架、添加窗体按任务8.1的方法搭建StudentInfo项目的三层开发框架,建立三层间的依赖关系,在表示层

项目中添加窗体frmStuAdmin,向窗体中添加控件、设计工具栏,窗体控件及布局如图所示数据访问层代码回顾——DBHelper.cs由于在数据访问层会经常频繁的访问数据库,如果每次访问数据库都创建SqlConnection、SqlCommand等一系列对象,这样

会使代码变得非常冗余,为了提高代码的复用率,在使用三层架构开发应用系统时,通常在数据访问层创建一个静态类,在这个静态类中编写获取连接对象、执行Sql语句等一系列静态方法。在数据访问层需要访问数据库时,通过调用这些方法来获取相应对象或执行相应操作,这样不仅可减少代码的书写量,

同时还可以降低数据访问层和业务逻辑层之间的耦合度业务逻辑层代码设计业务逻辑层的主要功能是为数据在表示层和数据访问层之间传递数据,根据前面任务分析中所述,我们需要在业务逻辑层项目中创建一个类,命名为“StuInfoManager.cs”,由于业务逻辑层的类需要调用数据访问层的类,因此在业务逻辑层的每

个类的代码中都要引入数据访问层的命名空间,同时还要在该层的每个类中实例化一个数据访问层对应类的对象,以方便通过对象来调用数据访问层类的方法。由于StuInfoManager.cs类中的GetStuInfo方法需要完成带条件和不带条件两种类型的数据查询

,因此需要根据不同的执行参数定义该方法的重载。表示层数据绑定privatevoidStuAdmin_Load(objectsender,EventArgse){//调用BindGdvStu()方法绑定Dat

aGridView控件数据this.BindGdvStu();//隐藏DataGridView控件显示数据的第1和第10列,既学生信息的序号和备注字段;this.dgvStuInfo.Columns[0].Visible=false;this.dgvS

tuInfo.Columns[10].Visible=false;//设置窗体中的系部和班级的ComboBox控件的索引this.cboDepartName.SelectedIndex=0;his.cboClassName.SelectedIndex=0;}任务8.2.2“学生信息

管理系统”项目——用三层架构实现学生信息管理任务8.2.2“学生信息管理系统”项目——用三层架构实现学生信息管理在任务8.2.1中,我们已经设计了数据访问层类StuInfoDB.cs和业务逻辑层类StuManager.cs,要实现本节任务目标,我们只需要在现有的类中添加相应的方法即可。对于数据的

添加、修改和删除,我们需要在数据访问层设计AddStuInfo、UpdateStuInfo和DeleteStuInfo三个方法分别来实现相应的功能。为了在表示层和数据访问层之间传递数据,我们还需要在业务逻辑层也添加相应的方法来提供支持。

为了提高数据访问的效率和安全性,在使用三层架构开发应用程序时,一般是通过调用数据库相应功能的存储过程来实现数据的增加、修改和删除。整个功能实现的时序图如图所示任务8.3“学生信息管理系统”项目——使用

实体类层实现三层架构在任务中使用实体类层重新改写业务层和数据访问层方法,首先将表示层各控件中输入的信息封装到一个学生实体类对象中,然后在业务逻辑层和数据访问层使用学生类实体对象来实现数据的传递,功能实现的时序图如图所示实体类所谓的实体类就是描述一个业务实体的类,业务实体

就是整个应用系统业务所涉及的对象。例如:在学生信息管理系统中的学生、课程、班级等都是业务实体,从数据的存储角度来讲,业务实体就是存储应用系统信息的数据表,通常情况下我们把应用系统数据库中的一个表就定义成一个实体类,表中的字段就

封装成类的属性。例如:学生信息管理系统数据库中StudentInfo表即可定义成一个实体类Student.cs,表和类两者间的对应关系如图8所示使用实体类的数据传递流程谢谢!ort-zc/scnzflknzg0838mlj5

sbjlight-ksjnxrttopbrightnesshd8gohd88gosj93oemgc189288hzp580yjoemoemdgxcdnpxskfjkoemdgzhongtezcyanjigzzg

-nskskf-ztnsk-ztfag-ztzhongtezcntn-zt189286xcdnpxdgxcdndgxcpxxcwxpxxunchi-pxoemfy0759mzlczx188189287nizifnmynzfmynz

fmynzgmynzgmynzgmljsgfmljnzf0838mlj

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?