目录
MVC设计模式
SpringMVC的工作机制
SpringMVC四大组件
SpringMVC的工作机制
Spring MVC是的基于JavaWeb的MVC框架,是Spring框架中的一个组成部分(WEB模块)。
Spring MVC符合JavaWeb MVC框架的一般特点,基于Spring MVC框架的应用同样主要由模型、视图和控制器三个部分构成。
Spring MVC框架具有效率高、易使用、灵活、良好的可配置性和拔插性等特点。
MVC设计模式
什么是设计模式所谓的设计模式,一套解决问题的办法和思路,一套成功的解决方案,被人们认可,都可以称为设计模式,前人成功经验的总结,前任经验的智慧的结晶
- MVC设计模式
众所周知,MVC设计模式由三部分组成
- Controller(控制器)
- Model(模型)
- View(视图)
专人专事,你擅长什么你处理什么组件的复用,代码的利用率提高了
SpringMVC的工作机制
Spring MVC框架主要提供控制体系部分,该控制体系主要包括:前端控制器、控制器。
来自客户端的请求首先被【前端控制器】接收,前端控制器再将请求分发给【控制器】,【控制器】处理请求、调用业务模型,并根据业务模型处理结果,向【前端控制器】返回数据(model)和视图名称,【前端控制器】将数据(model)交给视图模板(如:jsp)生成视图,最后由【前端控制器】将视图结果向浏览器呈现。
充当前端控制器的DispatcheServlet是一个Servlet,即Spring MVC提供的前端控制器,与其它Servlet一样需要在web.xml中进行配置。
SpringMVC四大组件
DispatcherServlet:前端控制器,总调度,底层真正接收请求和响应的组件。完成了对其他组件的调用,DispatcherServlet对物理视图进行渲染,并返回给客户端浏览器
HandlerMapping:处理器映射器根据请求url找到具体的控制器,生成具体的控制器对象,并将该对象返回给DispatcherServlet
HandlerAdapter:DispatcherServlet接收到控制器对象r后,就去寻找一个适合的处理器适配器,处理器适配器接收handler,完成类型装换、数据校验等操作,然后执行其中封装的控制器的方法,得到一个ModelAndView对象,处理器适配器将ModelAndView返回给DispatcherServlet
ViewResolver:DispatcherServlet将ModelkAndView交给视图解析器。视图解析器对封装在ModelAndView中的逻辑视图进行解析,得到物理视图,并把物理视图返回给DispatcherServlet.
SpringMVC的工作机制
- 用户发送请求至前端控制器DispatcherServlet
- DispatcherServlet收到请求调用处理器映射器HandlerMapping。
- 处理器映射器根据请求url找到具体的处理器,生成处理器执行链 HandlerExecutionChain(包括处理器对象和处理器拦截器)一并返回给DispatcherServlet。
- DispatcherServlet根据处理器Handler获取处理器适配器HandlerAdapter执行HandlerAdapter处理一系列的操作,如:参数封装,数据格式转换,数据验证等操作
- 执行处理器Handler(Controller,也叫页面控制器)。
- Handler执行完成返回ModelAndView
- HandlerAdapter将Handler执行结果ModelAndView返回到DispatcherServlet
- DispatcherServlet将ModelAndView传给ViewReslover视图解析器
- ViewReslover解析后返回具体View
- DispatcherServlet对View进行渲染视图(即将模型数据model填充至视图中)。
- DispatcherServlet响应用户。