1. MVC (Model View Controller)
(1)什么是MVC?
是一种软件架构思想,其核心思想是,将数据处理与数据展现分开,按照
这种思想,可以将一个软件系统划分成三种不同类型的模块,分别是模型、
视图和控制器。
模型负责数据处理(即业务逻辑),视图负责数据展现(即表示逻辑),控制器
负责协调模型和视图(用户通过视图向控制器发送请求,控制器选择对应的模型来处理请求;模型将处理结果返回给控制器,由控制器选择对应的视图来展现处理结果)。
(2)如何使用MVC来开发一个web应用。
使用java类充当模型、使用jsp充当视图、使用Servlet充当控制器。如
下图所示:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nP3SVtrk-1575335256063)(mvc.png)]
(3)MVC的优点
a.便于代码的维护。
数据处理发生改变,不会影响数据展现部分,反过来也是如此。
b.便于测试。
比如,将业务逻辑写在java类里面,不必部署整个应用,就可以单独
去测试。
c. 便于分工协作。
(4)MVC的缺点
使用MVC,会增加代码量、增加设计的难度、相应会增加软件开发的成本,
所以,只有具有一定规模、并且对系统的维护性有要求的软件,才需要使用
MVC。
2.实现一个简单的MVC框架(SmartMVC)
(1)目标
SmartMVC核心是一个通用的控制器(DispatcherServlet)。利用SmartMVC,
我们在开发一个web应用时,只需要添加相应的配置,通过该控制器就可以
调用相应的模型或者视图。也就是说,只需要写模型和视图,不再需要写
控制器了。
(2)架构
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FBsLtdq8-1575335256064)(smartmvc.png)]