什么是MVC设计模式?
MVC是模型(Model)、视图(View)、控制器(Controller)的缩写,即Model View Controller(MVC),MVC是一种设计模式。
MVC设计模式优缺点?
1.MVC设计模式优点
1)低耦合性
视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码。
2)可维护性
model 和view能够单独的开发,增加了程序的可维护性,且可扩展性并使测试变得容易。
3)复用性
由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化管理程序代码,提高代码复用性。
2.MVC设计模式缺点
- 不适合小型等规模的应用程序,花费大量时间将MVC应用到规模并不是很大的应用程序通常会得不偿失;
- 增加了系统结构和实现的复杂性;
- 视图对模型数据的低效率访问。
MVC设计模式工作原理
比如大家使用较多的SpringMVC,其实就是MVC设计模式的一种体现。
具体如下图所示:
1.模型(Model)
模型封装了数据及对数据的操作,可以直接对数据库进行访问。
简要的讲:就是一个或多个javabean对象,用于存储数据和业务逻辑。
2.视图(View)
视图负责展示,没有具体的程序逻辑,比如:一个JSP页面想控制器提交数据和为模型提供数据显示,JSP页面主要使用HTML标记和JavaBean标记来显示数据。
3.控制器(Controller)
控制器用于控制程序的流程,将模型中的数据展示到视图中。
比如:Servlet对象根据视图提交的请求进行控制,即将请求转发给业务逻辑的javabean,并将处理记过存放到实体模型javabean中,输出给视图显示。
MVC设计模式小结
总之我们通过 MVC 设计模式,最终可以打造出一个低耦合、高可重用性、复用性更高的架构模式。
陈睿mikechen
10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。
关注「mikechen」公众号,获取更多技术干货!
后台回复【面试】即可获取《史上最全阿里Java面试题总结》,后台回复【架构】,即可获取《阿里架构师进阶专题全部合集》