spring mvc(以下简称框架)是一个非常优秀的Web框架,开发简单,功能强大
框架包含三大部分:resolver , handler, controller
resolver 又分为上传resolver ,多语言resolver ,主题resolver ,显示resolver 和异常resolver ,根据他们的功能,将在不同的阶段产生作用
handler主要作用是根据Request Mapping调用相关的Controller和Intercepter
框架的核心就是DispatcherServlet,这是一个普通的servlet,他是框架的入口,也称为前端控制器。
当客户端发出请求,DispatcherServlet根据规则拦截到请求后,根据配置文件解析请求,如果为上传请求,那么将把请求包装成上传request,再根据RequestMapping规则由handler调用相应的Controller,再将model数据传递给前端控制器DispatcherServlet,如果这期间抛出异常,框架会调用异常resolver 进行处理,在正常情况下,前端控制器会根据view resolver获取页面模板,再进行渲染并发送到客户端。
每一个DispatcherServlet将会拥有自己的WebAppContext,他从AppContext继承而来,并且框架会在其中内置很多bean,比如说常见resolver。