一、概述
MVC(Modle-View-Controller)最初应用于桌面程序设计中,是Xerox PARc在20世纪80年代为编程语言“Smalltalk-80”发明的一种软件设计模式,MVC将系统分解为业务模型(Modle)、用户界面即视图(View)、控制器(Controller)三部分,每一部分相对独立,职责单一。MVC的思想实质就是“关注点分离”,即将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式,并利用C来确保M和V的同步,使得在改变M时,V也同步刷新。
二、视图、业务模型、控制器介绍
1.视图(View)
主要负责登录信息输入和登录结果输出,可以使用JSP、FreeMarker、Velocity等技术实现。
2.业务模型(model)
负责业务逻辑实现,例当且仅当用户名和密码正确时登录成功,否则登录失败。可使用JavaSE、EJB、WebService
等技术实现。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的复用性。
3.控制器(Controller)
主要的工作就是连接视图和业务逻辑,获取客户端输入的信息,调用业务逻辑,根据执行结果跳转到相应结果视图,
生成响应展示给客户端。可使用Servlet、Filter等技术实现。
三、MVC设计思想下的架构
其中Servlet充当控制器,JSP充当视图,JavaBean充当模型
四、使用MVC模式的优缺点
优点:可以使应用耦合性降低、高重用性和可适应性、较低的生命周期成本、
能够快速的部署、可维护性提高、有利于软件工程化管理
缺点:由于MVC模式中的三个部分并没有明确定义,需要精心的理解和设计,会使得
中小型应用开发起来更为复杂。