一、MVC的概念:
(1) M:Model模型
体现:实体类(entity/javaBean/pojo/damain)
Dao层
(2)V:View试图
体现:JSP页面
特点:视图是用户看到并与之交互的界面
试图向用户显示相关的数据
接收用户的输入
不进行任何实际的业务处理
(3)C:Controller控制器
体现:servler
特点:控制器接受用户的输入并调用模型和视图去完成用户需求
控制器接收请求并决定调用哪个模型组件去处理请求,然后决定调用
哪个视图来显示模型处理返回的数据
二、MVC处理过程
用户在视图提供的界面上发出请求,视图把请求转发给控制器,控制器调用相应的模型来处理用户请求,模型进行相应的业务逻辑处理,并返回数据。最后控制器调用相应的视图来显示模型返回的数据。
三、MVC的优点
MVC作为一种模块化的设计思想,具有如下优点:
— 多个视图能共享一个模型。在MVC设计模式中,模型响应用户请求并返回响应数据,视图负责格式化数据并把它们呈现给用户,业务逻辑和数据表示分离,同一个模型可以被不同的视图重用,所以大大提高了模型层程序代码的可重用性。
— 模型是自包含的,与控制器和视图保持相对独立,因此可以方便地改变应用程序的业务数据和业务规则。如果把数据库从MySQL移植到Oracle,或者把RDBMS数据源改变成LDAP数据源,只需改变模型即可。一旦正确地实现了模型,不管业务数据来自数据库还是LDAP服务器,视图都会正确地显示它们。由于MVC的三个模块相互独立,改变其中一个不会影响其他两个,所以依据这种设计思想能构造良好的松耦合的组件。
— 控制器提高了应用程序的灵活性和可配置性。控制器可以用来连接不同的模型和视图去完成用户的需求,控制器为构造应用程序提供了强有力的重组手段。给定一些可重用的模型和视图,控制器可以根据用户的需求选择适当的模型进行业务逻辑处理,然后选择适当的视图将处理结果显示给用户。