什么是三层架构?
在程序设计中,分层式结构是最常见,也是最重要的一种结构。程序的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层,表示层。
1、表示层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。
2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。
3、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增添、删除、修改、查找等。
如果是一些业务逻辑简单,或者没有真正的数据存储曾的业务,可以不使用三层架构,但是对于业务复杂,数据要求有独立的存储介质的时候,就需要用到三层架构。
使用三层架构后,每一层都可以更改少量代码后就放在物理上不同的服务器上使用,结构灵活而且性能更好。此外,每层做些什么其它层是完全看不到的,因此更改、更新某层,都不需要重新编译或者改变全部的层。体现了程序设计时低耦合的思想,是一个非常强大的功能。
什么Mvc模式?
全称Model(模型)-View(视图)-Controller(控制器),这是一种开发模式的设计思想。
Model(模型)是程序的主体部分,主要包含业务数据和业务逻辑。在模型层,还会涉及到用户发布的服务,在服务中会根据不同的业务需求,更新业务模型中的数据。
View(视图)是程序呈现给用户的部分,是用户和程序交互的接口,用户会根据具体的业务需求,在View视图层输入自己特定的业务数据,并通过界面的各种发来的请求事件与后台数据库沟通,将对应的请求提交给后台控制器(servlet)进行处理。
Controller(控制器)Controller是用来处理用户输入数据,已经更新业务模型的部分。控制器中接收了用户与界面交互时传递过来的数据,并根据数据业务逻辑来执行服务的调用和更新业务模型的数据和状态。
MVC的处理过程:首先控通过制器(servlet)接受用户的请求,调用相应的方法来进行业务处理,并返回数据给控制器。控制器调用相应的视图来显示用户发来的请求处理的结果。并通过视图显示给用户。实现人机数据之间的互动;
搞清楚MVC到底都代表什么之后,我们要考虑的是我们为什么要用MVC或是类似于这种模式的架构思想:
1.各施其职,互不干涉
在MVC模式中,三个层模式下各自干自己的,所以如果一旦哪一层的需求发生了变化,就只需要更改相应的层中的代码而不会影响到其它层中的代码。
2.有利于开发
在MVC模式中,由于按层把系统分开,那么就能更好的实现开发中的分工。网页设计人员可以进行开发视图层中的JSP,对业务熟悉的开发人员可开发业务层,而其它开发人员可开发控制层。
3.有利于代码的重用性
分层后更有利于代码的重用。如控制层可独立成一个能用的组件,视图层也可做成通用的操作界面。
总结:总之mvc模式的设计思想还在实际开发中是很具代表性的,它类似于三层架构的思想。