# 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模式浅谈
- 第一章 配置和安装Tomcat
- 第二章 Servlet(一)
- 第三章 Servlet(二)
- 练习 一 . Servlet配置级获取初始化参数
- 第四章 JSP(一)
- 第五章 JSP(二)
- 第六章 MVC设计模式
- 第七章 Cookie
- 第八章 Session
- 练习 二 . 简易版购物车
- 第九章 EL表达式
- 第十章 JSTL
- 第十一章 过滤器
- 第十二章 监听器
- 第十三章 文件的上传与下载
- 复习总结
- 如何手动启动Tomcat
- 如何修改Tomcat端口号
- 如何在web.xml中配置Servlet
- Servlet生命周期
- load-on-startup参数
- Servlet映射路径
- POST和GET的区别
- JSP中9个隐式对象及功能
- 请求转发及请求重定向的区别
- JSP指令有哪些
- 简述对MVC设计模式的理解
- 简述Cookie机制
- 简述Session机制
- HttpSession的生命周期
- Cookie和Session有什么区别
- 简述创建过滤器步骤
- 过滤器经典案例--统一编码字符集
- getParameter与getAttribute的区别
- JSP页面中可以包含哪些元素
- web应用中,是如何跟踪用户的
- InteliJ创建web项目