MVC是模型(Model)、视图(View)和控制(Controller)这3个单词的第一个字母。它是一种目前广泛流行的应用模型,它的目的是实现Web系统的职能分工。模型层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现;视图层则是用于与用户的交互,通常用JSP来实现;控制层则是模型与视图View之间沟通的桥梁。它可以把用户的请求分派并选择恰当的视图来显示它们,同时它也可以解释用户的输入并将其映射为模型层能够执行的操作。
MVC强制性的分离Web应用的输入、处理和输出,使得MVC应用程序被分成3个核心部件:模型、视图、控制器。它们各自处理自己的任务。
(1)模型(业务逻辑层)
模型表示企业数据和业务逻辑,它是应用程序的主体部分。业务流程的处理过程对其他层来说是黑箱操作,模型接受视图请求数据,并返回最终的处理结果。业务模型的设计可以说是MVC最主要的核心。业务模型另一个很重要的模型就是数据模型。数据模型主要指实体对象的数据持续化。例如,将一张订单保存到数据库,从数据库获取订单,将这个模型单独列出,所有有关数据库的操作只限制在该模型中。
(2)视图(表示层)
视图是用户看到并与之交互的界面。视图的功能主要表现在以下几个方面
- 根据客户类型显示信息。
- 显示商业逻辑(模型)的结构,而不关心信息如何获得何时获得。
(3)控制器
控制器接受用户的输入并调用模型和视图去完成用户的需求。所以,当用户单机Web页面中的超链接和发送HTML表单时,控制器(如Servlet)本身不输出