Java-MVC三层架构
MVC 三层架构
- 经典MVC模式中,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。其中,View的定义比较清晰,就是用户界面。
MVC 的三层架构演变
这种框架是 用户直接访问控制层,控制层就可以直接操作数据库,这种框架的缺点:
- 会造成程序的臃肿,不利于维护,因为再servlet代码中,不仅要处理请求、响应、视图条状、处理JDBC、逻辑代码、业务代码等等
Moddel
- 业务处理: 业务逻辑(Service)
- 数据持久层:CRUD(Dao)
View
- 展示数据
- 提供链接发起Servlet请求
Controller (Servlet)
- 接受用户请求
- 交给业务层处理对应的代码
- 控制视图的跳转
登录—接受用户的登录请求—处理用户的请求—交给业务层处理登录业务—Dao层进行数据库操作—数据库
最典型的MVC 就是JSP+Servlet+javabean 的模式。
MVC框架要做哪些事情
- 将url映射到java类或java类的方法 .
- 封装用户提交的数据 .
- 处理请求–调用相关的业务处理–封装响应数据 .
- 将响应的数据进行渲染 . jsp / html 等表示层数据 .
常见的服务器端MVC框架有:Struts、Spring MVC、ASP.NET MVC、Zend Framework、JSF;
常见前端MVC框架:vue、angularjs、react、backbone;
由MVC演化出了另外一些模式如:MVP、MVVM 等等…