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. Qt项目管理文件(.pro)及其作用详解

    http://c.biancheng.net/view/1819.html 在 Qt Creator 中新建一个 Widget Application 项目 samp2_1,在选择窗口基类的页面选择 ...

  2. Django扩展内置User类

    内置User类 使用内置User可以方便实现登录验证,利用Admin管理界面还可以方便添加.删除.修改用户. 一个内置的User类定义了以下字段: username: 用户名 password: 密码 ...

  3. VB.NET Event RaiseEvent用处

    一.代码 Private Sub Form1_Load(ByVal sender As Object, _                       ByVal e As System.EventA ...

  4. Python(1) 整型与浮动型

    整型与浮动型 整数/浮动数=浮点型整数/整数 = 浮点型 例如:>>> type(1/1)<class 'float'>>>> type(1/1.0)& ...

  5. 《SaltStack技术入门与实践》—— Mine

    Mine 本章节参考<SaltStack技术入门与实践>,感谢该书作者: 刘继伟.沈灿.赵舜东 Mine是SaltStack收集Minion数据存储到Master的一个组件,它的功能与Gr ...

  6. 【leetcode】299. Bulls and Cows

    题目如下: 解题思路:本题难度不太大,对时间复杂度也没有很高的要求.我的做法是用一个字典来保存每个字符出现的次数,用正数1记录标记secret中出现的字符,用负数1记录guess中出现的字符,这样每出 ...

  7. div写表格,原生滚动条,数据能够自动滚动

    如何让表格的滚动条能够自动滚动呢? html: <div class="tabinner5"> <div class="tab5 tab5a" ...

  8. 13 Spring Boot Shiro使用JS-CSS-IMG

    filterChainMap.put("/403", "anon");filterChainMap.put("/assets/**", &q ...

  9. [转]SpeedPHP微信接口扩展

    这个扩展实现了SP和微信公众平台的对接,1.0版暂时只实现了最简单的功能:绑定,收信息,回复信息. 扩展配置方法: $spConfig = array(     'mode' => 'debug ...

  10. 使用JLDAP操作LDAP,包含匿名连接、ldif导入导出、获取根节点、对数据的操作、LDAP错误码解析等

    bean类 package com.cn.ccc.ggg.ldap.model; import javax.persistence.Entity; import javax.persistence.T ...