服务器端 三层架构

来源:互联网 发布:面向接口编程的含义 编辑:程序博客网 时间:2024/05/19 11:36

java服务器端项目分包:




三层架构(3-tier architecture) 通常意义上的三层架构就是将整个业务应用划分为:

表现层(Presentation layer)、

业务逻辑层(Business Logic Layer)、

数据访问层(Data access layer)。区分层次的目的即为了“高内聚低耦合”的思想。在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。


微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或称为领域层)、表示层。

 

三层结构原理:

13个层次中,系统主要功能和业务逻辑都在业务逻辑层进行处理。

2)三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。

通常情况下,客户端不直接与数据库进行交互,而是与中间层建立连接,再经由中间层与数据库进行交互。

 

各层的作用

1:数据访问层:是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据.

2:业务逻辑层:主要是针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻辑处理。

3:表示层:主要表现为WEB方式,如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务。表示层:主要对用户的请求接受,以及数据的返回,为客户端提供应用程序的访问。

 

表示层

位于最外层(最上层),最接近用户。用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。

 

业务逻辑层

是系统架构中体现核心价值的部分。业务逻辑层在体系架构中的位置很关键,它处于数据访问层与表示层中间,起到了数据交换中承上启下的作用。由于层是一种弱耦合结构,层与层之间的依赖是向下的,底层对于上层而言是“无知”的,改变上层的设计对于其调用的底层而言没有任何影响。

如果在分层设计时,遵循了面向接口设计的思想,那么这种向下的依赖也应该是一种弱依赖关系。因而在不改变接口定义的前提下,理想的分层式架构,应该是一个支持可抽取、可替换的“抽屉”式架构。正因为如此,业务逻辑层的设计对于一个支持可扩展的架构尤为关键,因为它扮演了两个不同的角色。对于数据访问层而言,它是调用者;对于表示层而言,它却是被调用者。

 

数据访问层

有时候也称为是持久层,其功能主要是负责数据库的访问,可以访问数据库系统、二进制文件、文本文档或是XML文档。

简单的说法就是实现对数据表的SelectInsertUpdateDelete的操作

 

优点:降低层与层之间的依赖;

1、开发人员可以只关注整个结构中的其中某一层;

2、可以很容易的用新的实现来替换原有层次的实现;

3、可以降低层与层之间的依赖;4、有利于标准化;

5、利于各层逻辑的复用。

6、结构更加的明确

7、在后期维护的时候,极大地降低了维护成本和维护时间

 

缺点:系统架构复杂,不适合小型项目。

1、降低了系统的性能。这是不言而喻的。如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应的数据,如今却必须通过中间层来完成。

2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。

3、增加了开发成本。

 

三层架构

  在软件体系架构设计中,也是最重要的一种结构。微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或称为领域层)、表示层。

  所谓三层体系结构,是在客户端与数据库之间加入了一个中间层,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。

 

0 0
原创粉丝点击