焦点期刊
在线客服

著作编辑 著作编辑

咨询邮箱:568476783@qq.com

计算机论文

C/S两层架构的开发模式

时间:2021-12-13 12:56 所属分类:计算机论文 点击次数:

C/S两层架构的开发模式在应用系统开发过程中被广泛采用。它的应用逻辑一般仅分布在客户和服务器端,通过客户端发出数据资源访问请求,然后服务器端将结果返回给客户端的信息传递机制,这对系统的性能、升级和维护等方面都产生了极大的限制。伴随着面向对象技术、分层建模技术和网络浏览器导航技术的逐渐成熟,B/S模式的多层应用程序架构得到越来越多的应用。将原有的两层结构发展为三层甚至三层结构的开发模式,在客户机与服务器之间主要增加了一个一层或多层的应用程序,即“应用服务器”,使得原有集成表示层处理和业务逻辑处理的臃肿的胖客户机得到释放,并逐渐发展成为分别实现表示层和业务逻辑层的模式。使得开发者能够在一个简洁的界面上确保用户可以进行必要的操作,同时也能够专注于对系统的核心业务逻辑进行分析,从C/S模式到B/S模式的转变,使原有的客户机维护工作发生了巨大的变化。C/S模式应用程序的客户机要求管理员在每一个客户机机系统上都安装客户程序。经理们需要向客户机的用户逐个解决问题;B/S模式仅仅要求用户在他们自己的计算机系统中安装浏览器软件(操作系统中通常会附带自动安装软件),将应用系统的所有程序集中放在服务器上,由管理员统一管理维护,这样可大大节省系统维护费用。B/S的三层结构是当前B/S体系结构中非常流行的体系结构设计模式,它由表示层、业务逻辑层和数据访问层三个层次构成。NET充分利用微软公司的ASP.NET技术,可以方便地实现三层结构的B/S系统架构,极大地提高了开发效率,增强了系统的可维护性和可扩展性。本论文研究了如何利用ASP.NET(C#)技术实现三层结构的应用系统。
二、三层体系结构。
系统体系结构的选择是影响整个应用系统设计的一个重要环节。体系结构设计主要完成对软件包的定义和描述,以及软件包与软件包之间的依赖关系和通信机制。B/S模式的三层结构是一种简单、成熟、普遍适用的应用架构,它把应用程序结构划分为3个相对独立的层次,包括用户表示层、业务逻辑层和数据存取层。每个层只实现该层中相对独立的功能,而当其中任何一层发生变更时,其它层只要不改变层间的界面关系就不受影响。三层结构是一种严格的层次化协作结构,它只允许业务逻辑层访问数据层,而业务逻辑层只能通过表示层访问。它由表示层向业务逻辑层传递请求,它由业务逻辑层完成相关业务规则和逻辑,通过数据访问层访问数据库获取数据,然后按相反的顺序返回,将数据显示在用户接口层。
2.1用户表(USL)
用户表现层又称用户界面层,封装了人机界面的所有形式和组件,是系统与应用系统之间的直接接口。它主要用来显示由业务逻辑层动态传输的数据信息,组合使用相应的HTML标记和样式表定义实现;用户输入数据信息并通过简单的校验后,通过数据接口将文件传输到业务逻辑层下载。
2.2BLL(BLL)
商业逻辑层主要完成应用系统相关的业务规则和逻辑的封装,在为用户表示层访问提供功能调用的同时,通过调用数据访问层提供的功能来访问数据库。在系统设计中,业务逻辑层主要通过构造系统中关键对象类来实现大多数逻辑控制功能。
2.3数据存取(DAL)
业务逻辑层只能对数据访问层进行访问,系统仅通过其访问数据库获得数据。根据业务逻辑层的要求,数据访问层与数据库交互时,主要完成对数据库记录的查询和插入,以及对数据库记录的修改和删除。在动态信息管理系统中,数据库访问是最为频繁、消耗资源最多的操作,因此为了提高系统的性能和可靠性,必须优化数据库访问策略。B/S模式的三层结构是一种严格的层次化定义,它先将应用系统的复杂开发分解成相对简单的小块;各层只完成了系统相应层的功能设计,各层之间的交互由相邻层对应的功能模块调用;讯息的传送仅通过接口。
通常情况下,数据访问层包括业务实体和数据操作两部分。由Microsoft公司提供的标准术语称为业务实体组件和数据访问逻辑组件。对于三层结构,数据存取层是数据库处理的唯一一层,这一层应尽可能地提高速度和安全性。
商业实体组件反映实际业务数据,而数据访问逻辑组件则将从数据库中获取数据或将其保存到数据库中。
2.3.1数据存取逻辑部分。
简单地说,数据存取逻辑组件,就是实现数据库中的数据操作和实现数据相关操作所需的业务逻辑。资料存取逻辑组件的主要功能是:
(1)向数据库添加记录。
(2)读取数据库的记录,并将其作为商业实体数据返回给调用方。
(3)向数据库更新调用程序修改的业务实体数据。
(4)从数据库删除记录。
并非所有的数据库表都由一个数据访问逻辑组件来操作,实际上,逻辑组件所封装的是数据库中一张表或一组相关表的操作。
2.3.2商业实体组成。
商业实体是在实际生活中用数据来表示业务模型。企业实体的属性与数据库中的表有着一一对应的关系,每个数据库访问组件对应一个业务实体。
2.3.2.1经营实体的特征。
(1)提供程序存取商业数据和相关功能。
(2)可以用具有复杂体系结构的数据创建,这些复杂数据通常显示为数据库中的多个可作为业务流程中的输入输出的相关表。
(3)总体数据可作为业务流程中的输入输出参数传递。
(4)业务实体并不参与交易处理,只是在事务处理期间由事务处理由数据访问层完成。
2.3.2.2商业实体的表现。
业务实体可以以多种方式在应用程序中显示。既有以数据为中心的表示,也有面向对象的表示。具体地说包括以下方法。
(1)XML:使用XML字符串或XML文档对象模型表示。
(2)DataSet:DataSet是通常来自数据库或XML文档的缓存内存中的一个或多个表的集合。
(3)定制业务实体组件:一个在业务流程中保存数据的定制类库。在某些DataTable中包含字段和其他通用属性。
文章使用第三种方法:定制业务实体组件。数据访问组件可调用业务实体,也可由业务逻辑层调用,通常有三层结构包含业务实体,如图1所示。
一些系统将业务实体放在一个单独的层中,如图2所示,两种方法都是正确的,关键是要根据设计人员的意图和实际的开发项目来决定。