一、Spring MVC概述
Spring MVC框架是一个开源的Java平台,为开发强大的基于Java的Web应用程序提供全面的基础架构支持非常容易和非常快速。
二、SpringMVC架构原理分析
1.用户发送请求到前端控制器(DispatcherServlet)
2.前端控制器请求HandlerMapping(处理器映射器)查找handler (可以根据xml配置或者是注解的方式进行查找)
3.HandlerMapping处理器映射器返回一个handler
4.前端控制器调用处理器适配器去执行handler
5.处理器适配器HandlerAdapter执行handler
6.handler执行完成后给处理器适配器HandlerAdapter返回一个ModelAndView对象
7.处理器适配器HandlerAdapter向前端控制器返回ModelAndView(SpringMVC的一个底层对象,包括了Model和View)
8.前端控制器请求视图解析器去进行视图解析,根据逻辑视图名来解析真正的视图
9.视图解析器给前端控制器返回view
10.前端控制器进行视图渲染,视图渲染将模型数据填充到request中
11.前端控制器向用户响应结果
三、重要组件
1.前端控制器DispatcherServlet:接受请求,响应结果,相当于一个转发器,中央处理器,有了DispatcherServlet其他组件之间的耦合度(不需要程序员开发)
2.处理器映射器HandlerMapping:根据请求的url来查找handler(不需要程序员开发)
3.处理器适配器HandlerAdapter:按照特定的规则(HandlerAdapter要求的规则)执行handler(不需要程序员开发)
注意:在编写handler按照HandlerAdapter的要求去做,这样子
4.视图解析器:根据逻辑视图名来进行视图解析,解析成正在的视图(view)
5.view:是一个接口,实现类支持不同的视图类型(jsp,freemarker,excel,pdf)
6.handler:处理器,平常我们叫做是controller
四、Spring MVC架构原理图