MVC并不是Java语言的特有的设计思想,也并不是Web应用所特有的思想,它是所有面向对象程序设计语言都应该遵守的规范。
MVC思想将一个应用分成三个基本部分:Model(模型)、View(视图)和Controller(控制器),这三个部分以最少的耦合协同工作,从而提高应用的可扩展性和可维护性。
MVC的特点:
(1)多个视图可以对应一个模型。按MVC设计模式,一个模型对应多个视图,可以减少代码的复制及代码的的维护量,这样,一旦模型发生变化,也易于维护。
(2)模型返回的数据与显示逻辑分离。模型数据可以应用任何的显示技术,例如,使用JSP页面、Velocity模板或者直接产生Excel文档等。
(3)应用被分隔为三层,这降低了各层之间的耦合,提供了应用的可扩展性。
(4)控制层的概念也很有效,由于它把不同的模型和不同的视图组合在一起,完成不同的请求。因此,控制层可以说包含了用户请求权限的概念。
(5)MVC更符合软件工程化管理的精神。不同的层各司其职,每一层的组件具有相同的特征,这有利于通过工程化和工具化的方法产生管理程序代码。