什么叫做数据库的“三层架构”

2020-12-13 16:03:28 字数 5024 阅读 4968

1楼:匿名用户

三层架构可以说是一种设置模式,他的作用只是让我们更加有效的利用资源,有利于以后的修改和查看,依次分为视图层,逻辑层,数据层;

试图层顾名思义就是我们所看到的,他的原**并没有关于处理和连库等**,只是简单的跳转页面,我们没有办法看到真正的**;

逻辑层就是我们从页面层发回的问题等请求,从字面意思来看,你可以将他视为一个过渡层,只是连接是图层和数据层;进行一些连库,删除数据等操作了;从试图层跳转过来的问题在这里进行处理,并提交给数据层,再返回页面层共读者查看;

数据层就不用说了吧!这里存放着所有的数据也就是一个工程的大本营一样;

三层架构已经不仅仅属于.***了,他是一种设计形式,从某种意义上来说,所有的开发设计几乎都已经以三层架构为基础,三层架构及有效的处理问题,将数据和试图也有效的分开,这样防止耦合度过高,有利于处理和修改,(你不会是想将**全部写在视图页面上,这样有一个小小的变动,我们就要翻看几十万句**,从中找出,那我要替你的眼睛抱不平了)当你将程序做好后,从这台机子移动到另一台机子时,大大减少了出错的问题;

通俗一点就是,这样看上去很有层次感,我们查看时,可以减少时间的浪费,也不用在**堆里翻来覆去找不到北

什么是三层架构?

2楼:pig笨笨的

asp.***三层架构

因为每一层都可以在仅仅更改很少量的**后,就能放到物理上

不同的服务器上使用,因此结构灵活而且性能更佳。此外,每层做些什么其它层是完全看不到的,因此更改、更新某层,都不再需要重新编译或者更改全部的层了。这是个很强大的功能。

例如,如果把数据访问**与业务逻辑层分离,当数据库服务器更改后,你只需要更改数据访问的**,因为业务逻辑层是不变的,因此不需要更改或者重新编译业务逻辑层。

一个n层的应用程序通常有三层:表现层、业务层和数据层。下面让我们看看每层都做些什么。

表现层(presentation layer)

表现层用于用户接口的展示,以及用业务层的类和对象来“驱动”这些接口。

在asp.***中,该层包括aspx页面、用户控制、服务器控制以及某些与安全相关的类和对象。

业务层(business tier)

业务层用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。

在asp.***中,该层包括使用sqlclient或oledb从sql server或access数据库取数据、更新数据及删除数据,并把取得的数据放到datareader或dataset中返回给表现层。返回的数据也许只有一个整型数字,比如一个表的行记录数目,但这也要用数据层的数据进行计算。

bll和dal

通常该层被划分成两个子层:业务逻辑层(business logic layer,bll)和数据访问层(data access layers,dal)。业务逻辑层在数据访问层之上,也就是说bll调用dal的类和对象。

dal访问数据并将其转给bll。

在asp.***中,该层可以用sqlclient或oledb从sql server或access数据库取数据,把数据通过dataset 或datareader的形式给bll,bll处理数据给表现层。有的时候,例如直接把dataset 或datareader送给表现层的时候,bll是一个透明层。

数据层(data tier)

数据层是数据库或者数据源。在.***中,通常它是一个sql server或access数据库,但不仅限于此两种形式,它还可能是oracle,mysql,甚至是xml。

逻辑层vs(分布式)物理层

人们容易将这两个概念搞混。我们说逻辑层是把层按类的集合来划分,而这些层都在同一台个服务器上。(分布式)物理层是指类的集合在不同的服务器上,用附加的**来处理层间的通信,比如remoting和web服务。

决定如何划分你的层(是物理的还是不是物理的)是非常重要的。在划分时应考虑下面因素:

1、注意如果划分成物理层,你的应用程序的速度会因为不同服务器在网络中通信的延迟而减慢。所以,如果你决定用物理层,请确保获得性能的提升大于性能的降低。

2、按照n层架构设计你的应用程序。

3、部署以及维护物理分布式的应用程序的成本是很高的。你首先需要不止一台服务器,你还需要网络硬件来连接这些服务器。在这种情况下,部署应用变得更加复杂!

因此这样做之前请确定这样做是否值得。

另外还要注意,你的应用程序的每层都做何使用。你也许因为运行的多个服务都需要某一层而把该层放到别台服务器上。例如,你也许会因为给不同的用户定制不同的表现层,而将业务逻辑层放于别处;你也许会因为还有其它的应用访问同一个数据库,而把sql server服务放到别处

3楼:匿名用户

应用程序通常有三层:表现层、业务层和数据层表现层(presentation layer)表现层用于用户接口的展示,以及用业务层的类和对象来“驱动”这些接口。

在asp.***中,该层包括aspx页面、用户控制、服务器控制以及某些与安全相关的类和对象。

业务层(business tier)

业务层用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。

在asp.***中,该层包括使用sqlclient或oledb从sql server或access数据库取数据、更新数据及删除数据,并把取得的数据放到datareader或dataset中返回给表现层。返回的数据也许只有一个整型数字,比如一个表的行记录数目,但这也要用数据层的数据进行计算。

4楼:匿名用户

http://baike.baidu.***/view/687468.htm 百科

5楼:迟蕴涵哀珑

业务逻辑层

(bll)、数据访问层(dal)。区分层次的目的即为了“高内聚,低耦合”的思想。

1、表现层(ui):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。

2、业务逻辑层(bll):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。

3、数据访问层(dal):该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等。

6楼:艾甘洛鸿羽

三层架构是包括数据访问层(dal)、业务逻辑层(bll)和表示层(ui),还有个实体层用于层和层之间数据传送,表示层将用户所填的信息传给业务逻辑层判断后,再访问数据访问层进行增删改查,个层做个层的事,这样做的好处就是大项目容易维护!那里出错就在那里改!易查易改!

7楼:濮蘇媽愙鑫

一个n层的应用程序通常有

三层:表现层、业务层和数据层。因为每一层都可以在仅仅更改很少量的**后,就能放到物理上不同的服务器上使用,因此结构灵活而且性能更佳。

此外,每层做些什么其它层是完全看不到的,因此更改、更新某层,都不再需要重新编译或者更改全部的层了。这是个很强大的功能。例如,如果把数据访问**与业务逻辑层分离,当数据库服务器更改后,你只需要更改数据访问的**,因为业务逻辑层是不变的,因此不需要更改或者重新编译业务逻辑层。

一个n层的应用程序通常有三层:表现层、业务层和数据层。下面让我们看看每层都做些什么。

表现层(presentation layer)

表现层用于用户接口的展示,以及用业务层的类和对象来“驱动”这些接口。

业务层(business tier)

业务层用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。

在asp.***中,该层包括使用sqlclient或oledb从sql server或access数据库取数据、更新数据及删除数据,并把取得的数据放到datareader或dataset中返回给表现层。返回的数据也许只有一个整型数字,比如一个表的行记录数目,但这也要用数据层的数据进行计算。

bll和dal

通常该层被划分成两个子层:业务逻辑层(business logic layer,bll)和数据访问层(data access layers,dal)。业务逻辑层在数据访问层之上,也就是说bll调用dal的类和对象。

dal访问数据并将其转给bll。

在asp.***中,该层可以用sqlclient或oledb从sql server或access数据库取数据,把数据通过dataset 或datareader的形式给bll,bll处理数据给表现层。有的时候,例如直接把dataset 或datareader送给表现层的时候,bll是一个透明层。

数据层(data tier)

数据层是数据库或者数据源。在.***中,通常它是一个sql server或access数据库,但不仅限于此两种形式,它还可能是oracle,mysql,甚至是xml。

逻辑层vs(分布式)物理层

人们容易将这两个概念搞混。我们说逻辑层是把层按类的集合来划分,而这些层都在同一台个服务器上。(分布式)物理层是指类的集合在不同

三层架构的具体含义是什么?举个例子,谢谢。

8楼:匿名用户

三层架构是.***的运行方式,具体为

底层是数据库层->储存数据

中间为业务逻辑层->业务处理

最外层为表现层->处理展示、样式的。

近些年,编程方面更流行mvc框架

m:模块

v:视图

c:控制

好好去学习吧。

9楼:匿名用户

三层架构(表现层、业务逻辑层、数据访问层)。表现层即页面展示,是用户所能看到并通过其进行和计算机的额交互;逻辑层是中间层负责进行数据处理和业务逻辑实现,可以看作是对数据访问层进行操作;数据访问层负责逻辑层的结果和数据库数据之间的交互,即对数据库的增、删、读等操作。表现层最好不包含业务逻辑,也可进行部分数据验证(通常是数据格式、类型验证。

)如:计算货物总价,即货物数量乘以单价;逻辑需求其实和货物是什么毫无关系,只是单纯的乘法运算,而业务需求就涉及到具体业务,这两样加起来可看作是业务逻辑层;用于输入数据的界面就是表现层;将计算结果存入数据库中的方法可以看做是数据访问层。

严格意义上的三层架构在现实编程过程中很难实现,因为在编程过程中往往把业务需求混合到逻辑需求中,而很多人不能很好的区分业务需求和逻辑需求,而且在编写**时在业务中实现逻辑是很方便的。但是这样的后果是后期修改和维护会极不方便,**也没有可重用性可言。

个人认为实际上三层架构可分为表现层、业务层、逻辑层、数据层,层与层之间可相互独立。

数据库这门功课学了有什么作用啊,数据库原理这门课学的是什么,有什么作用?

1楼 若无其事 能够了解数据库的基本原理,并且还能学会sql语言。 一般数据都是放在数据库文件中,数据通过数据库系统处理。sql语言就是对数据库的操作。做一般的信息管理系统时,都会用到数据库的,也自然会用到sql语句。 这是个基础的东西,学了可以对数据库有更深的认识,因为你的专业总会用到数据库的。 ...

模型和数据库查询有什么区别,数据库中的概念模型和数据模型有什么区别

1楼 数据模型数据 data 是描述事物的符号记录。模型 model 是现实世界的抽象。数据模型 datamodel 是数据特征的抽象,是数据库管理的教学形式框架。 数据模型所描述的内容包括三个部分 数据结构 数据操作 数据约束。1 数据结构 数据模型 模型和数据库查询有什么区别 2楼 追忆小土豆 ...

记录,字段,表,数据库之间的关系是什么

1楼 匿名用户 一个数据库包含0 n个表 一个表包含0 n个字段 记录是表中的行 row 2楼 匿名用户 一个数据库是由数据表,视图,函数等组成的 数据表,其结构由字段组成 一个数据表,可能含有多条记录。 什么是表 记录 字段 它们之间的关系是什么?我要比较正式的说法,谢谢了! 3楼 匿名用户 1 ...