① 什么是三层结构
三层架构(3-tier architecture) 通常意义上的三层架构就是将整个业务应用划分为:界面层(User Interface layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data access layer)。区分层次的目的即为了 “高内聚低耦合” 的思想。在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或称为领域层)、表示层。
表示层:
界面层也称为表示层,位于最外层(最上层),离用户最近。用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。
业务逻辑层:
业务逻辑层(Business Logic Layer)无疑是系统架构中体现核心价值的部分。它的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计,也即是说它是与系统所应对的领域(Domain)逻辑有关,很多时候,也将业务逻辑层称为领域层。例如Martin Fowler在《Patterns of Enterprise Application Architecture》一书中,将整个架构分为三个主要的层:表示层、领域层和数据源层。作为领域驱动设计的先驱Eric Evans,对业务逻辑层作了更细致地划分,细分为应用层与领域层,通过分层进一步将领域逻辑与领域逻辑的解决方案分离。 业务逻辑层在体系架构中的位置很关键,它处于数据访问层与表示层中间,起到了数据交换中承上启下的作用。由于层是一种弱耦合结构,层与层之间的依赖是向下的,底层对于上层而言是“无知”的,改变上层的设计对于其调用的底层而言没有任何影响。如果在分层设计时,遵循了面向接口设计的思想,那么这种向下的依赖也应该是一种弱依赖关系。因而在不改变接口定义的前提下,理想的分层式架构,应该是一个支持可抽取、可替换的“抽屉”式架构。正因为如此,业务逻辑层的设计对于一个支持可扩展的架构尤为关键,因为它扮演了两个不同的角色。对于数据访问层而言,它是调用者;对于表示层而言,它却是被调用者。依赖与被依赖的关系都纠结在业务逻辑层上,如何实现依赖关系的解耦,则是除了实现业务逻辑之外留给设计师的任务。
数据访问层:
数据访问层,有时候也称为是持久层,其功能主要是负责数据库的访问,可以访问数据库系统、二
② .NET三层架构解析一:什么是三层架构
所谓三层架构 ,是在客户端与数据库之间加入了一个中间层,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。 在项目开发的过程中,有时把整个项目分为三层架构,其中包括:表示层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。三层的作用分别如下: 表示层:为用户提供交互操作界面,这一点不论是对于Web还是WinForm都是如此,就是用户界面操作。我们网站展示给用户看的界面。 业务逻辑层:负责关键业务的处理和数据的传递。复杂的逻辑判断和涉及到数据库的数据验证都需要在此做出处理。根据传入的值返回用户想得到的值,或者处理相关的逻辑。 数据访问层:见名知意,负责数据库数据的访问。主要为业务逻辑层提供数据,根据传入的值来操作数据库,增、删、改或者其它。 以下我简单介绍下一个用户管理模块: 为了整个项目的开发方便,我们在项目中会建几个类库SQLHelper,BLL,DAL,Model和一个Web网站。为了命名清晰,我们可以这样命名这个三个工程(即在解决方案里添加的类库): 业务逻辑层(BusinessLogicLayer):BLL,命名空间默认设置为BLL 数据访问层(DataAccessLayer):DAL,命名空间默认设置为DAL SQL帮助类:SQLHelper,命名空间默认设置为SQLHelper 另外我们为了数据传递的方便,通常再添加一个类库,这个类库是贯穿于整个三层架构中的。即实体类。通常命名为Model,命名空间默认值设置为:Models。其中封装的每个类都对应一个实体,通常就是数据库中的一个表。如数据库中的用户表(custom)封装为(custom),将表中的每个字段都封装成共有的属性。 这样三层架构的搭建就基本完成了。这三层有着非常强的依赖关系: 表示层 ← 业务逻辑层 ← 数据访问层 他们之间的数据传递是双向的,并且通常借助实体类传递数据。 1、易于项目的修改和维护。在项目的开发过程中或者开发后的升级过程中,甚至在项目的移植过程中。这种三层架构是非常方便的。比如项目从Web移植到Form,我们只需要将表示层重新做一遍就可以了。其余两层不用改动,只需添加到现有项目就可以了。如果不采用这种架构,只是将代码写到表示层。那么所有的编码几乎都要重新来了。 2、易于扩展。在功能的扩展上同样如此,如有功能的添加只需把原有的类库添加方法就可了 3、易于代码的重用。这一点就不用解释了。 4、易于分工协作开 还可以加个接口类库Iinterface, 加入设计模式,使你的代码灵活性更好源码天空 其实,当我们做一个项目时,我们应该先考虑一下这个项目是不是应该应用三层/多层设计时, 先得考虑下是不是真的需要? 实际上大部分程序就开个WebApplication就足够了, 完全没必要作的这么复杂. 而多层结构, 是用于解决真正复杂的项目需求的。
③ 只有表示层是什么架构
不用到数据库,就没有数据访问层,那你建的项目就不是三层架构.如果你使用了三层的话,表示层还是要调用业务层的.
使用三层是为了“高内聚,低耦合”的思想,使得开发人员的分工更加明确,降低层与层间的依赖性,既可以良好地保证未来的可扩展,在复用性上也是优势明显。
表示层:也就是界面层,给用户看到
业务层:对数据业务逻辑处理
数据访问层:对数据的增、删、改、查等.
用户提交了一个请求,先传递到业务层,业务层进行处理,再转到数据访问层,数据访问层,在对数据库进行相关的操作,得到一个结果,再传到业务层,业务层处理完了之后,返回给界面层,最终响应给了用户.
④ 三层架构中的表示层,数据访问层,和业务逻辑层具体是怎么划分的
一般讲到三层架构,其实就是将整个业务应用划分为表示层、业务逻辑层、数据访问层等。 三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构
⑤ 表示层 业务逻辑层 数据访问层怎么理解
顾名思义,
表示层存放和前台交互的代码,比如 servlet,用于接收数据、跳转页面等
业务逻辑层,存放业务逻辑相关代码
数据访问层,存放和数据库交互的代码
⑥ 三层中,业务层、表示层 这两层是用来干嘛的。
三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。
1、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。(关键在于由原始数据抽象出逻辑数据)能够提供interface\API层次上所有的功能。,“中间业务层”的实际目的是将“数据访问层”的最基础的存储逻辑组合起来,形成一种业务规则
2、表示层(DAL):该层所做事务直接操作数据库,针对数据的增添、删除、修改、查找等。(关键在于粒度的把握)要保证“数据访问层”的中的函数功能的原子性!即最小性和不可再分。“数据访问层”只管负责存储或读取数据就可以了。
⑦ 什么是网站的三层结构:数据层、业务层、表现层
您好,
一般讲到网站的三层架构,其实就是将整个业务应用划分为表示层、业务逻辑层、数据访问层等。
三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构:数据层、业务层、表现层,就是MVC模式,这是一种软件的设计模式,通过层次的划分,把各自不同的逻辑隔离开来。
详细了解的话,建议你在网上搜下MVC。
另外,网站不一定都要是MVC的,有些虽然说的很强大,其实根本不是那么回事。如果只是个很小的网站,确实没必要一定要去实现MVC,成本上不划算。就跟你如果去买菜,没必要一定要开法拉利一样。
至于VS2005,对于网站你可以这么开,它是把前台界面的显示和后台业务逻辑分开来的,你可以这么理解前台界面部分是V,后台业务逻辑类是C,数据库部分是M。
⑧ 怎么理解java中的业务逻辑层、数据访问层、表示层请各位大神帮忙解析
业务逻辑层(servlet)是处理业务的地方
数据访问层就是去数据库获取数据的地方
表示层(jsp,html页面)也就是展示数据的地方
比如:登入操作,在表示层登入,然后业务逻辑层就会带着用户名和密码去数据访问层去查询数据,看看有没有这个用户,返回给业务层,业务层就判断返回的东西,就知道有没有这个户名,没有则携带错误信息再跳转到表示层,有则进行下一步操作
⑨ 什么是网站的三层结构:数据层、业务层、表现层
您好,
一般讲到网站的三层架构,其实就是将整个业务应用划分为表示层、业务逻辑层、数据访问层等。 三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构:数据层、业务层、表现层,就是MVC模式,这是一种软件的设计模式,通过层次的划分,把各自不同的逻辑隔离开来。
详细了解的话,建议你在网上搜下MVC。
另外,网站不一定都要是MVC的,有些虽然说的很强大,其实根本不是那么回事。如果只是个很小的网站,确实没必要一定要去实现MVC,成本上不划算。就跟你如果去买菜,没必要一定要开法拉利一样。
至于VS2005,对于网站你可以这么开,它是把前台界面的显示和后台业务逻辑分开来的,你可以这么理解前台界面部分是V,后台业务逻辑类是C,数据库部分是M。
⑩ 怎么理解java中的业务逻辑层,数据访问层,表示层
三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。
1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。(负责展示而已)
2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。(关键在于由原始数据抽象出逻辑数据)能够提供interface\API层次上所有的功能。,“中间业务层”的实际目的是将“数据访问层”的最基础的存储逻辑组合起来,形成一种业务规则
3、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增添、删除、修改、查找等。(关键在于粒度的把握)要保证“数据访问层”的中的函数功能的原子性!即最小性和不可再分。“数据访问层”只管负责存储或读取数据就可以了。
多写写项目,多了解项目结构大概就能知道这样的好处了