最新公告
  • 29分享网为网络创业者提供小本创业、零成本项目、新媒体运营等方面资源。
  • mvc设计模式分为哪三层(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与三层架构的区别)