SpringMVC起步(一)
SpringMVC起步(一)
笔记来源于慕课网:https://www.imooc.com/video/7126/0
MVC:Model-View-Controller
Model:模型层,业务数据的信息表示,关注支撑业务的信息构成,通常是多个业务实体的组合

View:视图层,为用户提供UI。重点关注数据的呈现
Controller:控制层,调用业务逻辑产生合适的数据(Model);传递数据给视图层用于呈现
注:Controller连接Model & View 起到桥梁作用
MVC的本质:MVC的核心思想是业务数据抽取同业务数据呈现相分离

1、用户端的请求通过Http协议到达前端控制器Front Controller
2、前端控制器分发请求到控制器Controller
3、控制器处理业务逻辑,生成业务数据,并将业务数据返回给前端控制器Front Controller
4、前端控制器将业务数据分发给对应的业务视图,由业务视图最终呈现前端页面
5、呈现好的前端页面返回给前端控制器
6、前端控制器将前端页面最终返回给浏览器端,此时用户即可看到请求页面。
注:什么是前端控制器
可将前端控制器比喻为医院的分诊台

MVC概要:
1、什么是MVC
MVC是一种架构模式:程序分层,分工合作,既相互独立,又协同工作
MVC是一种思考方式:需要将什么信息展示给用户?(M层)如何布局?(V层)调用哪些业务逻辑?(C层)
2、SpringMVC静态概念
(1)。DispatcherServlet:SpringMVC前端控制器,用于分发请求到Controller及页面呈现
(2)。Controller:调用业务逻辑生成Model
(3)。HandlerAdapter:

(4)。HandlerInterceptor:拦截器
【1】afterCompletion
【2】postHandle
【3】preHandle
(5)。HandlerMapping:控制DispatcherServlet请求到来需要调用哪一个Controller
(6)。HandlerExcecutionChain:
HandlerMapping返回东西包含如下,它们之间构成一个链条。


(6)。ModelAndView:Model的具体表现

(7)。ViewResolver:视图解析器
帮助DispatcherServlet找到正确的视图页面
(8)。View:负责呈现页面
3、SpringMVC动态概念


SpringMVC起步(一)的更多相关文章
- SpringMVC起步
SpringMVC: SpringMVC是Spring的一个组件,作为控制器,可以替代Servlet SpringMVC的开发过程: 请求发送 DispatcherServlet查询一个或多个Hand ...
- SpringMVC 入门
MVC 简介 1.MVC 是一种架构模式 程序分层,分工合作,既相互独立,又协同工作,分为三层:模型层.视图层和控制层 2.MVC 是一种思考方式 View:视图层,为用户提供UI,重点关注数据的呈现 ...
- SpringMVC的一点理解
1.MVC(Model-View-Controller) 用慕课网上的一个图来看看MVC Front Controller(前端控制器):把客户的请求分发给不同的控制器去生成业务数据,将生成的业务数据 ...
- springMVC+Hibernate4+spring整合实例二(实例代码部分)
UserController.java 代码: package com.edw.controller; import java.io.IOException; import java.io.Print ...
- sts 创建springMVC项目---- maven和tomcat 错误处理
今天学习spring的时候,学到了springMVC, 因为springMVC 就是beginning spring 书籍的第三章,为了更深入或更简单的起步学习springMVC, 我又找了另外一本书 ...
- SpringMVC的概念和图解
1.概念 Spring MVC起步:慕课网视频 SpringMVC架构浅析:参考 Spring详解(一)------概述 Spring架构简单描述 2.图片
- Spring+SpringMVC+MyBatis+easyUI整合进阶篇(七)一次线上Mysql数据库崩溃事故的记录
作者:13 GitHub:https://github.com/ZHENFENG13 版权声明:本文为原创文章,未经允许不得转载. 文章简介 工作这几年,技术栈在不断更新,项目管理心得也增加了不少,写 ...
- SpringBoot初体验之整合SpringMVC
作为开发人员,大家都知道,SpringBoot是基于Spring4.0设计的,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程.另外Spr ...
- SpringBoot+SpringMVC+MyBatis快速整合搭建
作为开发人员,大家都知道,SpringBoot是基于Spring4.0设计的,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程.另外Spr ...
随机推荐
- logname - 显示用户登录名
总览 (SYNOPSIS) logname [OPTION]... 描述 (DESCRIPTION) 显示 当前用户 的 名字. --help 显示 帮助信息, 然后 结束. --version 显示 ...
- 斯托克斯公式(Stokes' theorem)
参考:http://spaces.ac.cn/archives/4062/ 参考:https://en.wikipedia.org/wiki/Exterior_derivative 比如Ω是一个曲面( ...
- selenium定位
https://www.cnblogs.com/programer-xinmu78/p/10881766.html https://www.cnblogs.com/eastonliu/p/908830 ...
- linux下安装MySQL(mariadb)
MySQL(mariadb) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可. 开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源 ...
- Task6.PyTorch理解更多神经网络优化方法
1.了解不同优化器 2.书写优化器代码3.Momentum4.二维优化,随机梯度下降法进行优化实现5.Ada自适应梯度调节法6.RMSProp7.Adam8.PyTorch种优化器选择 梯度下降法: ...
- js 将时间戳转为日期格式
最近项目需要在前端将一个13位的时间戳显示成日期格式,在网上查了很多都不符合要求,只有一个是能满足要求的,在这记录一下,说不定以后还用的着. 13位时间戳改为yyyy-MM-dd HH-mm-ss 格 ...
- Day_02-Python的分支结构和循环结构
分支结构 应用场景 迄今为止,我们写的Python代码都是一条一条语句顺序执行,这种结构的代码我们称之为顺序结构.然而仅有顺序结构并不能解决所有的问题,比如我们设计一个游戏,游戏第一关的通关条件是玩家 ...
- Gparted for partition of Linux on graphic interface
You can change the partition table on Linux by a group of tools, which is tool comprehansive for a n ...
- Logstash介绍及Input插件介绍
一.Logstash简介 Logstash是一个开源数据收集引擎,具有实时管道功能.Logstash可以动态地将来自不同数据源的数据统一起来,并将数据标准化到你所选择的目的地. Logstash管 ...
- Ubuntu安装过程中的问题
1.win10系统安装32bit ubuntu,使用VM安装ubuntu 的iso文件,刚启动不停按F2,进入BIOS,boot设置为 CD-ROM drive 2.安装界面都没有出现,电脑老是重启, ...