SpringMVC
1、SpringMVC概述
1.1、什么是SpringMVC
SpringMVC就是一个Spring内置的MVC框架。
MVC框架,它解决WEB开发中常见的问题(参数接收、文件上传、表单验证、国际化等等),而且使用简单,与Spring无缝集成。支持 RESTful风格的URL请求。
采用了松散耦合可插拔组件结构,比其他 MVC 框架更具扩展性和灵活性。
1.2、SpringMVC的作用
MVC模式(Model-View-Controller):解决页面代码和后台代码的分离。
2、SpringMVC原理
在没有使用SpringMVC之前我们都是使用Servlet在做Web开发。但是使用Servlet开发在接收请求参数,数据共享,页面跳转等操作相对比较复杂。servlet是java进行web开发的标准,既然springMVC是对servlet的封装,那么很显然SpringMVC底层就是Servlet,SpringMVC就是对Servlet进行深层次的封装。
3、Spring MVC架构
- 结构最清晰的Model2(MVC)实现
- Controller
- ModelAndView
4、SpringMVC工作流程
01、用户发送出请求被前端控制器DispatcherServlet拦截进行处理。
02、DispatcherServlet收到请求调用HandlerMapping(处理器映射器)。
03、HandlerMapping找到具体的处理器(查找xml配置或注解配置),生成处理器对象及处理器拦截器(如果有),再一起返回给DispatcherServlet。
04、DispatcherServlet调用HandlerAdapter(处理器适配器)。
05、HandlerAdapter经过适配调用具体的处理器(Handler/Controller)。
06、Controller执行完成返回ModelAndView对象。
07、HandlerAdapter将Controller执行结果ModelAndView返回给DispatcherServlet。
08、DispatcherServlet将ModelAndView传给ViewReslover(视图解析器)。
09、ViewReslover解析ModelAndView后返回具体View(视图)给DispatcherServlet。
10、DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中)。
11、DispatcherServlet响应View给用户。
SpringMVC核心组件
-
DispatcherSerylet (中央控制器)
-
Spring MVC最核心的类,在web.xml中配置
配置注册中央控制器(中央调度器)DispatcherServlet
为什么要配置
因为DispatcherServlet在创建的过程中,会同时创建springmvc的容器对象
读取springmvc的配置文件
-
-
Handler (处理器) : 对应MVC中C(Controller)
- 作用:实际处理请求
- 标注了@RequestMapping的所有方法都可以看作是一个Handler
-
ModelAndView
- 逻辑视图名
- 模型对象
5、第一个SpringMVC注解的程序的创建和使用
注解式开发:在代码中通过累与方法的注解,完成处理
- 创建项目,添加jar包
- 配置注册中央控制器(中央调度器)DispatcherServlet
- 创建springmvc配置文件
- 创建Controller层
创建方法
创建视图解析器配置
处理器方法的返回值:
1、ModelAndView
2、String:处理方法字符串可以指定逻辑视图名
创建视图解析器配置
处理器方法的返回值:
1、ModelAndView
2、String:处理方法字符串可以指定逻辑视图名
再通过视图解析器可以将其转成物理视图地址