今天是端午前最后一天上班,今天开始加上端午3天学习SpringMVC~!

参考资料:
http://blog.csdn.net/swingpyzf/article/details/8885459

概述

1、框架原理&概念
2、SpringMVCDemo HelloWorld搭建

框架原理

SpringMVC框架是围绕DispatcherServlet这个核心展开,DispatcherServlet这个Servlet负责拦截请求,并将其分派给相应的处理类来处理。
类似于之前接触过的Model2-MVC(Model1就是原始三层架构,view、biz、model)
SpringMVC的整体模块架构:

分析:
1、 由最先的HTPP发送请求,由所配置的XML中的DispatcherServlet处理。

2、 DispatcherServlet接受到这个请求后,根据请求的信息及HandlerMapping的配置找到处理请求的处理器Handler。

3、 得到HandlerMapping对应的Handler后,通过HandlerAdapter对Handler进行封装,再以统一的适配器接口调用Handler。

4、 处理器完成业务逻辑的处理后返回一个ModelAndView给DispatcherServlet。

5、 ModelAndView包含逻辑视图名,而非真正的视图对象,DispatcherServlet借由ViewResolver完成逻辑视图名到真实视图对象的解析工作。

6、 当得到真实View对象后,DispatcherServlet就对这个View对象进行渲染。

7、 最终返回到客户的HTTP响应。

SpringMVC概念

  • DispatcherServlet
    联通M-V-C的分发器,从用户端接受请求,分发给合适的Controller,获取Controller返回的ViewAndModel,并渲染页面返回给用户
  • Controller
    实现业务逻辑,获取数据拼装成Model返回
  • HandlerAdapter
    将Controller适配成DispatcherServlet可以使用的handler(不是很理解)
  • HanlderInterceptor
    拦截器
  • HandlerMapping
    告诉DispatcherServlet,请求该由那个Controller去响应
  • HandlerExecutionChain
    处理执行链:preHandle->Controller method-> postHandle -> afterCompletion
  • ModelAndView
    SpringMVC 中Model的具体表现
  • ViewResolver
    视图解析器,告诉DispatcherServlet改用那个视图
  • View
    页面

SpringMVC【一、概述】的更多相关文章

  1. 01.SpringMVC之概述

    springMVC架构 SpringMVC是Spring框架的一个模块,Spring和SpringMVC无需通过中间整合层进行整合.SpringMVC是基于MVC架构的WEB框架.SpringMVC框 ...

  2. SpringMVC(一)概述、解析器与注解

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一.SpringMVC的概述 1.概述 Spring MVC框架是一个开源的Java平台,为开发强大的基 ...

  3. 【Java EE 学习 83 上】【SpringMVC】【基本使用方法】

    一.SpringMVC框架概述 什么是SpringMVC?SpringMVC是一个和Struts2差不多的东西,他们的作用和性质几乎是相同的,甚至开发效率上也差不多,但是在运行效率上SpringMVC ...

  4. 让SpringMVC支持可版本管理的Restful接口

    需求 移动互联网时代的到来,软件开发的模式也在变化.记得以前做B/S的后台开发,基本上没有Http接口一说,全部是通过渲染模板技术(jsp,freemark)把最终html展示给最终用户.现在完全变了 ...

  5. SpringMVC(一)--基础、REST、@RequestParam、POST请求乱码等

    1.SpringMVC基本概述 Spring 为展现层提供的基于 MVC 设计理念的优秀的Web 框架,是目前最主流的 MVC 框架之一 Spring3.0 后全面超越 Struts2,成为最优秀的 ...

  6. SSM框架之SpringMVC(1)入门程序

    SpringMVC(1) 1.三层架构和MVC 1.1. 三层架构 咱们开发服务器端程序,一般都基于两种形式,一种C/S架构程序,一种B/S架构程序 使用Java语言基本上都是开发B/S架构的程序,B ...

  7. SpringMVC初识

    1 SpringMVC的概述 Spring为展现层提供的基于MVC设计理念的优秀的web框架,是目前最主流的MVC框架之一. Spring3.0后面全面超过Struts2,成为了最优秀的MVC框架. ...

  8. SpringMVC-01 什么是SpringMVC

    SpringMVC-01 什么是SpringMVC 回顾MVC 1.什么是MVC MVC是模型(Model).视图(View).控制器(Controller)的简写,是一种软件设计规范. 是将业务逻辑 ...

  9. 零基础学习java------38---------spring中关于通知类型的补充,springmvc,springmvc入门程序,访问保护资源,参数的绑定(简单数据类型,POJO,包装类),返回数据类型,三大组件,注解

    一. 通知类型 spring aop通知(advice)分成五类: (1)前置通知[Before advice]:在连接点前面执行,前置通知不会影响连接点的执行,除非此处抛出异常. (2)正常返回通知 ...

  10. 《SpringMVC从入门到放肆》一、概述

    一.SpringMVC概述 View Service Dao DB Spring MVC interface interface Mysql impls impls SpringMVC也叫Spring ...

随机推荐

  1. java引用如果是成员变量则引用本身不保存在栈上的汇编级调试证明

    很久很久没有更新博客了,因为发生太多太多猝不及防的事情,再加上自己本身也特别忙,这里补上一直想发的自己觉得很有意义的一次探索过程. 就是很多java开发人员都曾被误导的一个点——“如果一个变量是引用, ...

  2. JavaScript 异步和单线程

    JavaScript语言本身是单线程的,所以它自身不可能是异步.所谓单线程,就必然意味着:所有任务需要排队,前一个任务结束,才会执行后一个任务. 但js的宿主环境(比如浏览器,Node)是多线程的.宿 ...

  3. sonar:sonarqube6.7.6与mysql5.7版本不匹配

    问题 更换sonarqube的数据库为mysql后,启动sonarqube,提示Database was upgraded to a more recent of SonarQube. 解决: 将so ...

  4. 码云配置WebHook自动更新

    配置项目提交到git的时候自动同步服务器代码 一.在服务器项目跟目录新建文件hook.php 代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 <?php $json =  ...

  5. HelloCube:ForEach

    此示例演示了一个简单的ECS系统,它可以旋转一对立方体. 它显示了什么? 此示例演示了ECS中数据和功能的分离.数据存储在组件中,如下RadiansPerSecond属性存储在RotationSpee ...

  6. 【AMAD】sorl-thumbnail -- Django缩略图

    动机 简介 个人评分 动机 生成缩略图是一个烦人的工作. 简介 sorl-thumbnail1的特性包括: 支持不同的storage 实现缩略图的引擎是可以切换的:Pillow, ImageMagic ...

  7. hadoop java VM 参数设置 默认native栈大小设置

    问题总结: 程序栈太小,64位机器的栈大小默认比32位的大,将程序从64放到32中执行则报错,需要修改初始堆栈大小 (.so库中提供两个函数接口,一个里面使用的是尺寸较大的图像,另一个处理的图像很小, ...

  8. [转帖]关于USB3.0以及type-C

    忘记来源页面了.. 但是昨天晚上 usb 4.0 发布了 跟雷电C 安全一样的标准 双向40gb 的带宽. 而且 以后只有usb type-C的接口了. 我们办公机器上面的 typeC 同事用 ngf ...

  9. 华为CPU的类型

    主要分类: 以及 一句名言

  10. 1.3.4 Fork/Join框架

    package com.study.forkjoin; import java.util.ArrayList; import java.util.List; import java.util.conc ...