JAVA三次层架构和MVC

来源:互联网 发布:网络机柜全套 编辑:程序博客网 时间:2024/05/17 08:48
一、三层架构:  
1. 数据访问层:  主要是对原始数据(数据库或文本文件等存放数据的形式)的操作,
而不是数据本身,是“操作数据库”,而不是“数据库”,为业务逻辑层和表示层提供数据服务。  


2.业务逻辑层:  主要是针对具体的问题,对数据业务逻辑处理,主要负责对数据层的操作,把一些数据层的操作组合。 


3.表示层:主要对用户数据的接受,以及数据的返回,为客户端提供应用程序的访问。 




二、三层架构的优缺点:  
优点:  
1. 开发人员可以只关注结构中的某一层  


2. 可以很容易的用新的实现来替代原有结构中的一层 


3. 可以降低层和层之间的依赖 


4. 可以更容易实现标准化 


5. 有利于各层的复用 


6. 结构更加清晰  


7. 大大降低后期维护成本和维护时间 


缺点:  
1. 降低了系统的性能,如果不采用三层架构,很多业务可以直接访问数据库,以此来 获取数据,而现在必须通过中间层来获取数据。  


2. 有时候会产生级联修改,尤其体现在自上而下的修改,比如在表示层需要增加一个 功能,那么为了保证其设计符合分层式结构,
那么在业务逻辑层和数据访问层都要增加相应的代码。 


3. 增加了开发成本  二、三层架构和MVC的比较: 








三、MVC
 MVC是一种架构模式,不是设计模式。同样是架构级别,相同的地方是他们都有一个表现层,不同在于其他两层。  
在三层架构中没有定义Controller的概念,这是主要的不同的地方,而MVC也没有把业务的逻辑访问堪称两个层,
这是采用三层架构和MVC搭建程序的主要区别,当然了,在三层中也提到了Modle,但是和MVC中的Modle还是有区别的,
“三层”中典型的modle层是实体类组成的,而MVC中的Modle则是有业务逻辑和访问数据构成的。 




四、MVC  
1. Modle(模型)  是应用程序用来处理数据业务逻辑的部分,通常模型对象负责在数据库中存取数据 


2. view(视图)  是应用程序中处理数据显示的部分,视图通常是依据模型数据创建的。 


3. controller(控制器)  是应用程序中处理用户交互的部分,通常控制器负责从视图接收数据,控制用户输入,并向模型发送数据。  




五、MVC优缺点:  
优点:  1. 耦合性低 2. 重用性高 3. 生命周期成本低 4. 部署快 5. 可维护性好  6. 有利于软件工程化管理 


缺点:  1. 没有明确的定义  2. 不适合中小规模的应用程序  3. 增加系统的结构性和实现的复杂性 4. 视图与控制器之间过于紧密的联系 


5. 视图对模型数据的低效率访问  6. 一般高级的界面工具和构造器不支持模式
0 0