MVC设计模式:
M:model,模型,操作数据的业务处理层,并独立于表现层
V:view,视图,通过客户端数据类型显示数据,并回显模型层的执行结果
C:control,控制器,是模型和视图的桥梁,控制数据的流向,接受视图层发出的事件,并显示视图。
MVC的model1与model2的比较
模式一:
整个web应用中几乎都是jsp页面组成,jsp页面接受处理客户端请求,对请求处理后直接作出响应,用少量的JavaBean来处理数据库的连接和访问等操作;model1的实现比较简单,适用于开发小规模项目。但是从工程化的角度讲,它的局限性就很明显:jsp身兼View和Controller两种角色,将控制逻辑和表现逻辑混淆在一起,从而导致代码的重用性低,程序的耦合度高,增加了应用的扩展性和维护的难度。
模型二:
JSP+Servlet+JavaBean
以控制为核心,jsp只负责显示和收集数据;servlet,连接视图和模型,将视图层数据发送给模型层;JavaBean。分为业务类和数据实体,业务类处理业务数据,数据实体承载数据。
MVC的特点:
1.多个视图可以对应一个模型。按MVC设计模式,一个模型对应多个视图,可以减少代码的复制及代码的维护量,一旦模型发生改变也易于维护。
2.模型返回的数据与显示逻辑分离。模型数据可以应用任何的显示技术,例如:使用jsp页面、Velocity模板或者直接产生Excel文档等。
3.应用被分割为三层,降低了各层之间的耦合,提供了应用的可扩展性。
4.控制层的概念也很有效,由于它把不同的视图组合在一起,完成不同的请求。因此,控制层可以说是包含了用户请求权限的概念。
5.MVC更符合软件工程化管理的精神。不同的层各司其职,每一层的组件具有相同的特征,有利于通过工程化和工具化产生管理程序代码。