springmvc基础知识

1、什么是springMVC

2、springMVC框架原理(掌握)

前端控制器、处理器映射器、处理器适配器、视图解析器

3、springmvc入门程序

目的:对前端控制器、处理器映射器、处理器适配器、视图解析器学习

非注解的处理器映射器、处理器适配器

    注解的处理器映射器、处理器适配器(掌握)

3、springMVC和Mybatis整合(掌握)

4、springMVC注解开发

1)常用的注解学习

2)参数绑定(简单类型、pojo、集合类型)

3)自定义参数绑定(掌握)

5、springmvc和struts2的区别

————————————————————————————————————————————

————————————————————————————————————————————

一、springmvc框架原理

1.1 什么是springmvc

springmvc是spring的一个模块,springmvc和spring无需中间整合层整合

springmvc是基于mvc的web框架。(mvc是一个设计模式)

1.2、mvc在B/S系统下的应用

mvc是一个设计模式,mvc在B/S系统下的应用:

1.3 springmvc框架原理

第一步:发起请求到前端控制器(Dispatcherservlet)

第二步:前端控制器请求处理器映射器handlerMapping查找handler

可以根据xml配置或者注解查找

第三步:处理器映射器handerMapping返回handler

第四步:前端控制器调用处理器适配器(handlerAdapter)去执行handler

第五步:处理器适配器(handlerAdapter)去执行handler

第六步:handler处理器(controller)适配器(handlerAdapter)返回ModelAndView

第七步:处理器适配器(handlerAdapter)向前端控制器返回ModelAndView

ModelAndView是springmvc底层的一个对象,包括model和view

第八步:前端控制器请求视图解析器(View resolver)去进行视图解析

根据逻辑视图名解析成真正的视图(jsp)

第九步:视图解析器向前端控制器返回view

第十步:前端控制器进行视图渲染

视图渲染将模型数据(在ModelAndView对象中)填充到request中。

第十一步:前端控制器向用户响应结果(response)

组件:

1、前端控制器Dispatcherservlet(不需要程序员开发)

作用:接收请求,响应结果,相当于转发器,中央处理器

有了Dispatcherservlet减轻了其他组件之间的耦合度

2、处理器映射器HandlerMapping(不需要程序员开发)

作用:根据请求url查找Handler

3、处理器适配器HandlerAdapter

作用:按照特定规则(HandlerAdapter要求的规则)去执行Handler

4、Handler处理器(需要程序员开发)

注意:编写Hander处理器时要按照适配器(HandlerAdapter)规则去编写,这样适配器才能正确执行Hander

5、视图解析器View resolver(不需要程序员开发)

作用:进行视图解析,根据逻辑视图名解析成真正的视图(springmvc中的view的对象)

6、视图View(需要程序员开发jsp)

View是一个接口,实现类支持不同的view类型(jsp、freemarker、pdf。。。)

【一】SpringMVC框架原理的更多相关文章

  1. springmvc框架原理分析

    第一步:用户发起请求到前端控制器(DispatcherServlet) 第二步:前端控制器请求HandlerMapping查找Handler,可以根据xml配置,注解进行查找 第三步:处理器映射器Ha ...

  2. 快速学习springMVC框架原理

    一.通过导图的方法快速去理解springmvc的原理 二.架构流程. 1. 用户发送请求至前端控制器DispatcherServlet 2. DispatcherServlet收到请求调用Handle ...

  3. springmvc(一) springmvc框架原理分析和简单入门程序

    springmvc这个框架真的非常简单,感觉比struts2还更简单,好好沉淀下来学习~ --WH 一.什么是springmvc? 我们知道三层架构的思想,并且如果你知道ssh的话,就会更加透彻的理解 ...

  4. SpringMVC学习(一)———— springmvc框架原理分析和简单入门程序

    一.什么是springmvc? 我们知道三层架构的思想,并且如果你知道ssh的话,就会更加透彻的理解这个思想,struts2在web层,spring在中间控制,hibernate在dao层与数据库打交 ...

  5. springmvc框架原理分析和简单入门程序

    一.什么是springmvc? 我们知道三层架构的思想,并且如果你知道ssh的话,就会更加透彻的理解这个思想,struts2在web层,spring在中间控制,hibernate在dao层与数据库打交 ...

  6. springmvc框架原理

    1.  用户发送请求至前端控制器DispatcherServlet 2.  DispatcherServlet收到请求调用HandlerMapping处理器映射器. 3.  处理器映射器根据请求url ...

  7. springmvc 框架原理

    先来个原理图,镇博. (图片出处:http://www.cnblogs.com/selene/p/4658554.html,感谢博主的图) 着重看:处理器映射器,处理器适配器,这两个的配置. 这两个的 ...

  8. 传智springMVC笔记

    springmvc 第一天 springmvc的基础知识 课程安排: 第一天:springmvc的基础知识 什么是springmvc? springmvc框架原理(掌握) 前端控制器.处理器映射器.处 ...

  9. springMVC1 springmvc的基础知识

    springmvc第一天 springmvc的基础知识 springmvc课程安排: 第一天: 基础知识 springmvc框架(重点) mvc在b/s系统中应用方式 springmvc框架原理(Di ...

随机推荐

  1. 【Java】《Java程序设计基础教程》第四章学习

    4.1 类的封装 封装指的是将东西包装在一起,然后以新的完整形式呈现.包含两个意义: 1). 把对象的全部属性和方法结合在一起,形成一个不可分割的独立单位(即对象). 2). 信息隐藏,即尽可能隐藏对 ...

  2. nodejs查看本机hosts文件域名对应ip

    const dns = require('dns') dns.lookup('domainName', function(err, result) { console.log(result) }) r ...

  3. Python函数的基本使用

    在编程中,无论使用什么 编程语言,函数的使用都是非常广泛的,函数能够完成特定的功能,降低编程的难度和代码重用. 1.函数的定义: 函数是一段具有特定功能的.可重用的语句组,用函数名来表示并通过函数名进 ...

  4. python 中 super函数的使用

    转载地址:http://python.jobbole.com/86787/ 1.简单的使用 在类的继承中,如果重定义某个方法,该方法会覆盖父类的同名方法,但有时,我们希望能同时实现父类的功能,这时,我 ...

  5. Post Office Problem

    Description There are n houses on a line. Given an array A and A[i] represents the position of i-th  ...

  6. 洛谷 P1120 小木棍 dfs+剪枝

    Problem Description [题目链接] https://www.luogu.com.cn/problem/P1120 乔治有一些同样长的小木棍,他把这些木棍随意砍成几段,直到每段的长都不 ...

  7. linux下MySQL的启动与访问

    启动与停止 1.启动 MySQL安装完成后启动文件mysql在/etc/init.d目录下,在需要启动时运行下面命令即可. [root@test1 init.d]# /etc/init.d/mysql ...

  8. SaltStack 在 Windows 上的操作基础

    SaltStack 在 windows上的操作基础 1.删除文件: salt '172.16.3.11' file.remove 'D:\downup\111.msu' 2.删除文件夹 salt '1 ...

  9. mongoDB线上数据库连接报错记录

    报错信息提示:无法在第一次连接时连接到服务器 别的一切正常,经过查询得知,是因为如果电脑没设定固定IP,并且重启情况下可能会导致IP地址更改. 解决方法: 将本机ip地址添加到cluster的白名单即 ...

  10. C结构体struct 和 共用体union的使用测试

    #include <stdio.h> struct { char name[10]; char sex; char job; int num; union{ //联合只能共用同一个内存 i ...