天天看点

mvc与三层架构再学习

  1. 三层架构
    mvc与三层架构再学习

    表现层(UI):展现给用户的界面,即用户在使用一个系统的时候的所见所得。

    业务逻辑层(BLL):对数据层的操作,对数据业务逻辑处理。

    数据访问层(DAL):直接操作数据库,针对数据的增添、删除、修改、更新、查找等。

  2. MVC
    mvc与三层架构再学习

    MVC是 Model-View-Controller,严格说这三个加起来才是三层架构中的UI层,也就是说,MVC把三层架构中的UI层再度进行了分化,分成了控制器、视图、实体。控制器完成页面逻辑,通过实体来与界面层完成通话,而C层直接与三层中的BLL进行对话。

    MVC是表现层的架构,MVC的Model实际上是ViewModel,即供View进行展示的数据。 ViewModel不包含业务逻辑,也不包含数据读取。 而在N层架构中,一般还会有一个Model层,用来与数据库的表相对应,也就是所谓ORM中的O。这个Model可能是POCO,也可能是包含一些验证逻辑的实体类,一般也不包含数据读取。进行数据读取的是数据访问层。而作为UI层的MVC一般不直接操作数据访问层,中间会有一个业务逻辑层封装业务逻辑、调用数据访问层。UI层(Controller)通过业务逻辑层来得到数据(Model),并进行封装(ViewModel),然后选择相应的View。

    (此段节选其他优秀文章,原文链接:https://blog.csdn.net/xc_zhou/article/details/80673786)

  3. mvc和三层架构的区别

    三层架构是界面层(Web)业务逻辑层(Service)和数据访问层(Dao)构成的

    MVC设计模式是模型层(Model)界面层(View)和控制层(Controller)构成的,而且他们之间也不对应。

    三层架构是采用分层思想,减轻类与类(接口)之间的耦合,通俗的说是为了减轻代码之间的依赖性,避免产生牵一发而动全身的后果。而MVC意在将后端代码和前台展示代码进行了分离。JavaBean既是一个封装的java对象,View是用来给前台客户端显示反馈的页面,采用Jsp来完成。而前台的代码与后端的逻辑代码之间的交互工作就交付给了Servlet。

    ​ 运作流程:Servlet接受到前台的传递的数据进行传递给业务逻辑层Service层,Service层处理完毕传递给数据库访问Dao,Dao通过Jdbc或者持久化将数据注入到数据库中去,继而反馈给Service层,Service层响应给Servlet,Servlet返回给Jsp页面(此段节选其他优秀文章,原文链接:https://blog.csdn.net/kese7952/article/details/81024892)

    mvc与三层架构再学习

继续阅读