多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# MVC设计模式 组件开发 ![](https://box.kancloud.cn/8829d5c83e491609824a5a115813efdd_878x412.png) JavaEE常用组件,能大大方便我们的开发 ![](https://box.kancloud.cn/9a05b429cad60e73568baff79bfe8a18_586x334.png) ## JavaEE 开发流程 ![](https://box.kancloud.cn/0b09795ececfe8b32f90061b21b315b9_825x314.png) 有问题: 1.Servlet的显示功能太差,不便于做响应页面的操作; 2.使用JSP响应页面,但JSP访问数据库,代表页面上需要写大量的Java代码,也不太好; 3.在页面上写的访问数据库的代码也不能得到很好的重用; 但这种方式在以前得到过广泛的使用,但缺点太明显,不便于维护升级 ## MVC处理过程 ![](https://box.kancloud.cn/aa840430ef934c1beb8b4fda4a2312f0_879x454.png) ## MVC MVC是Model-View-Controller的简称,即模型-视图-控制器。 MVC是一种设计模式,它把应用程序分成三个核心模块:模型、视图、控制器,它们各自处理自己的任务。 #### 模型(model) ![](https://box.kancloud.cn/5d5f3f88a3ed96b89d7ccefd9d49917b_289x100.png) 模型是应用程序的主体部分,模型表示业务数据和业务逻辑。 一个模型能为多个视图(安卓,IOS,PAD。。。)提供数据。 由于应用于模型的代码只需写一次就可以被多个视图重用,所以提高了代码的可重用性。 #### 视图(view) ![](https://box.kancloud.cn/ad7e1a19212817cc2c29298abe985760_126x152.png) 视图是用户看到并与之交互的界面,作用如下: --视图向用户显示相关的数据。 --接受用户的输入。 --不进行任何实际的业务处理。 #### 控制器(controller) ![](https://box.kancloud.cn/56bd504a7563a057882c6e529a157532_95x95.png) 控制器接受用户的输入并调用模型和视图去完成用户的需求。 控制器接收请求并决定调用哪个模型组件去处理请求,然后决定调用哪个视图来显示模型处理返回的数据。 *** #### 课堂实例(1)--查询、删除 查询数据库中student表中的所有信息,然后遍历打印在页面上 ![](https://box.kancloud.cn/cf08e972c5ced63830e86f6512211d91_836x668.png) 拓展:添加删除功能 ![](https://box.kancloud.cn/c359feaaafb51765d84573f414141fff_950x559.png) *** #### 课堂实例(2) ![](https://box.kancloud.cn/d170cb7a419f16d38dc8c7b04e58a8e9_842x555.png) ## MVC小结 模型-视图-控制器(MVC模式)是一种非常经典的软件架构模式,在UI框架和UI设计思路中扮演着非常重要的角色。从设计模式的角度来看,MVC模式是一种复合模式,它将多个设计模式在一种解决方案中结合起来,用来解决许多设计问题。MVC模式把用户界面交互分拆到不同的三种角色中,使应用程序被分成三个核心部件:Model(模型)、View(视图)、Control(控制器)。它们各自处理自己的任务: (1)模型:模型持有所有的数据、状态和程序逻辑。模型独立于视图和控制器。 (2)视图:用来呈现模型。视图通常直接从模型中取得它需要显示的状态与数据。对于相同的信息可以有多个不同的显示形式或视图。 (3)控制器:位于视图和模型中间,负责接受用户的输入,将输入进行解析并反馈给模型,通常一个视图具有一个控制器。 MVC模式将它们分离以提高系统的灵活性和复用性,不使用MVC模式,用户界面设计往往将这些对象混在一起。MVC模式实现了模型和视图的分离,这带来了几个好处。 (1)一个模型提供不同的多个视图表现形式,也能够为一个模型创建新的视图而无须重写模型。一旦模型的数据发生变化,模型将通知有关的视图,每个视图相应地刷新自己。 (2)模型可复用。因为模型是独立于视图的,所以可以把一个模型独立地移植到新的平台工作。 (3)提高开发效率。在开发界面显示部分时,你仅仅需要考虑的是如何布局一个好的用户界面;开发模型时,你仅仅要考虑的是业务逻辑和数据维护,这样能使开发者专注于某一方面的开发,提高开发效率。 MVC模式浅谈