mvc与三层架构含义及其使用优点

MVC与三层架构的区别(mvc设计模式分为哪三层)

视图View

负责页面的显示;与用户的交互。包含各种表单。 实现视图用到的技术有html/css/jsp/js等前端技术。

用户交互:用户鼠标点击页面;填写页面中各种表单……..等等

模型Model

模型负责各个功能的实现(如登录、增加、删除功能)。模型用JavaBean实现。

JavaBeans :

①是Java中一种特殊的类(换言之:JavaBean就是一个Java类).

一个Java类 ,满足以下要求,则可称为一个JavaBean

a. public修饰的类,提供public 无参构造方法

b. 所有属性 都是private

c. 提供getter和setter方法

②从使用层面来看,JavaBean分为2大类:

a. 封装业务逻辑的JavaBean (eg:LoginDao.java 封装了登录逻辑)

b. 封装数据的JavaBean (实体类:eg:Student.java Vedio.java 。往往对应于数据库中的一张表,即数据库中有个Student表,项目中就有个Student.java类)

③JavaBean 是一个可以重复使用的组件,通过编写一个组件来实现某种通用功能,“一次编写、任何地方执行、任何地方重用”。

控制器Controller

控制器负责将视图与模型一一对应起来。相当于一个模型分发器。所谓分发就是:①接收请求,并将该请求跳转(转发,重定向)到模型进行处理。②模型处理完毕后,再通过控制器,返回给视图中的请求处。建议使用Servlet实现控制器。

三层架构:

首先来说,三层架构与MVC的目标一致:都是为了解耦和、提高代码复用。MVC是一种设计模式,而三层架构是一种软件架构。

三层架构分为:表现层(UI)(web层)、业务逻辑层(BLL)(service层)、数据访问层(DAL)(dao层) ,再加上实体类库(Model)

1.实体类库(Model),在Java中,往往将其称为Entity实体类。数据库中用于存放数据,而我们通常选择会用一个专门的类来抽象出数据表的结构,类的属性就一对一的对应这表的属性。

·一般来说,Model实体类库层需要被DAL层,BIL层和UI层引用。

2.数据访问层(DAL),主要是存放对数据类的访问,即对数据库的添加、删除、修改、更新等基本操作

·DAL就是根据业务需求,构造SQL语句,构造参数,调用帮助类,获取结果,DAL层被BIL层调用

3.业务逻辑层(BLL)

·BLL层好比是桥梁,将UI表示层与DAL数据访问层之间联系起来。所要负责的,就是处理涉及业务逻辑相关的问题,比如在调用访问数据库之前,先处理数据、判断数据。

BLL层只被UIL层引用

用户表现层(UIL),就是用户看到的主界面

各层引用关系如下图所示:

MVC与三层架构的区别(mvc设计模式分为哪三层)

MVC与三层架构的对应关系,图示如下:

MVC与三层架构的区别(mvc设计模式分为哪三层) MVC与三层架构的区别(mvc设计模式分为哪三层)

本文来自作者:博文微金融,不代表小新网立场!

转载请注明:https://www.xiaoxinys.cn/312388.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。