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起步(一)的更多相关文章

  1. SpringMVC起步

    SpringMVC: SpringMVC是Spring的一个组件,作为控制器,可以替代Servlet SpringMVC的开发过程: 请求发送 DispatcherServlet查询一个或多个Hand ...

  2. SpringMVC 入门

    MVC 简介 1.MVC 是一种架构模式 程序分层,分工合作,既相互独立,又协同工作,分为三层:模型层.视图层和控制层 2.MVC 是一种思考方式 View:视图层,为用户提供UI,重点关注数据的呈现 ...

  3. SpringMVC的一点理解

    1.MVC(Model-View-Controller) 用慕课网上的一个图来看看MVC Front Controller(前端控制器):把客户的请求分发给不同的控制器去生成业务数据,将生成的业务数据 ...

  4. springMVC+Hibernate4+spring整合实例二(实例代码部分)

    UserController.java 代码: package com.edw.controller; import java.io.IOException; import java.io.Print ...

  5. sts 创建springMVC项目---- maven和tomcat 错误处理

    今天学习spring的时候,学到了springMVC, 因为springMVC 就是beginning spring 书籍的第三章,为了更深入或更简单的起步学习springMVC, 我又找了另外一本书 ...

  6. SpringMVC的概念和图解

    1.概念 Spring MVC起步:慕课网视频 SpringMVC架构浅析:参考 Spring详解(一)------概述 Spring架构简单描述 2.图片

  7. Spring+SpringMVC+MyBatis+easyUI整合进阶篇(七)一次线上Mysql数据库崩溃事故的记录

    作者:13 GitHub:https://github.com/ZHENFENG13 版权声明:本文为原创文章,未经允许不得转载. 文章简介 工作这几年,技术栈在不断更新,项目管理心得也增加了不少,写 ...

  8. SpringBoot初体验之整合SpringMVC

    作为开发人员,大家都知道,SpringBoot是基于Spring4.0设计的,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程.另外Spr ...

  9. SpringBoot+SpringMVC+MyBatis快速整合搭建

    作为开发人员,大家都知道,SpringBoot是基于Spring4.0设计的,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程.另外Spr ...

随机推荐

  1. Nginx 配置状态信息虚拟主机

    可以在浏览器中查看并发数量 [root@Liangenyu conf]# vim nginx.conf server { listen 80; server_name status.etiantian ...

  2. lsattr - 显示文件在Linux第二扩展文件系统上的特有属性

    SYNOPSIS(总览) lsattr [ -RVadv ] [ files... ] DESCRIPTION(描述) lsattr 显示文件在Linux第二扩展文件系统上的特有属性 OPTIONS( ...

  3. 为docker配置国内镜像加速器

    docker官方镜像仓库地址为:https://hub.docker.com/search?q=&type=image 因为是国外地址,因此下载镜像时速度很慢. 我们需要配置国内镜像加速, 可 ...

  4. css3-文字与字体

    1. 给文字添加阴影---text-shadow 语法: text-shadow: X-Offset Y-Offset blur color; X-Offset:表示阴影的水平偏移距离,其值为正值时阴 ...

  5. quartz 时间配置

    Quartz中时间表达式的设置-----corn表达式 (注:这是让我看比较明白的一个博文,但是抱歉,没有找到原作者,如有侵犯,请告知) 时间格式: <!-- s m h d m w(?) y( ...

  6. Django【第1篇】:Django之MTV模型

    Django框架第一篇基础 一个小问题: 什么是根目录:就是没有路径,只有域名..url(r'^$') 补充一张关于wsgiref模块的图片 一.MTV模型 Django的MTV分别代表: Model ...

  7. RPA走专有云还是公共云?阿里云RPA公共云给出了这样几组数据…

    自从近年国外UIPATH.AUTOMATION ANYWHERE.BLUE PRISM等RPA企业的崛起,Robotic Process Automation(RPA)走进了人们视野.它以节省成本.提 ...

  8. 错误: 找不到或无法加载主类 org.sang.BlogserverApplication

    错误: 找不到或无法加载主类 org.sang.BlogserverApplication

  9. php array_keys()函数 语法

    php array_keys()函数 语法 作用:返回包含数组中所有键名的一个新数组.直线电机选型 语法:array_keys(array,value,strict) 参数: 参数 描述 array ...

  10. Java——容器(List)

    [List接口]