SpringMVC和Struts2都属于表现层的框架,它是Spring框架的一部分,我们可以从Spring的整体结构中看得出来:
SpringMVC的处理流程
知道了SpringMVC是什么之后,我们还得从全局的角度来看待它,杜甫这个老诗人不是说过吗?会当凌绝顶,一览众山小。下面我们就来看看SpringMVC的处理流程。
前端控制器:Dispacherservlet;处理器映射器:HandlerMapping;处理器适配器:HandlerAdapter;视图解析器:ViewResolver springmvc的4个组件。
1、 用户发送请求,经过前端控制器Dispacherservlet将url交给处理器映射器处理
2、 处理器映射器HandlerMapping处理url,返回HandlerExecutionChain(可能包含拦截器,一定包含自定义的Controller(handler))
3、 前端控制器将Controller交给处理器适配器HandlerAdapter处理,处理完成后,返回MV对象(ModelAndView)
4、 前端控制器将MV交给视图解析器处理ViewResolver,处理的过程:将MV拆分成Model和view两个对象,并且将model渲染到view视图上,并且将view返回给前端控制器。
5、 最后,前端控制器将视图响应给用户。