Java-MVC三层架构

MVC 三层架构

  • 经典MVC模式中,M是指业务模型V是指用户界面C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。其中,View的定义比较清晰,就是用户界面。

MVC 的三层架构演变

在这里插入图片描述
这种框架是 用户直接访问控制层,控制层就可以直接操作数据库,这种框架的缺点:

  1. 会造成程序的臃肿,不利于维护,因为再servlet代码中,不仅要处理请求、响应、视图条状、处理JDBC、逻辑代码、业务代码等等

在这里插入图片描述

Moddel

  • 业务处理: 业务逻辑(Service)
  • 数据持久层:CRUD(Dao)

View

  • 展示数据
  • 提供链接发起Servlet请求

Controller (Servlet)

  • 接受用户请求
  • 交给业务层处理对应的代码
  • 控制视图的跳转

登录—接受用户的登录请求—处理用户的请求—交给业务层处理登录业务—Dao层进行数据库操作—数据库


最典型的MVC 就是JSP+Servlet+javabean 的模式。
在这里插入图片描述

MVC框架要做哪些事情

  1. 将url映射到java类或java类的方法 .
  2. 封装用户提交的数据 .
  3. 处理请求–调用相关的业务处理–封装响应数据 .
  4. 将响应的数据进行渲染 . jsp / html 等表示层数据 .

常见的服务器端MVC框架有:Struts、Spring MVC、ASP.NET MVC、Zend Framework、JSF;
常见前端MVC框架:vue、angularjs、react、backbone;
由MVC演化出了另外一些模式如:MVP、MVVM 等等…