您的位置:首页 > 编程语言 > Java开发

SpringMVC运行原理

2016-12-16 10:32 253 查看
springmvc是spring的一个模块,提供web层解决方案(基于mvc设计架构)。以下为SpringMVC的运行的大致流程图:

    


     

第一步:用户发起request请求,请求至DispatcherServlet前端控制器

第二步:DispatcherServlet前端控制器请求HandlerMapping处理器映射器查找Handler

DispatcherServlet:前端控制器,相当于中央调度器,各各组件都和前端控制器进行交互,降低了各各组 件之间耦合度。

第三步:HandlerMapping处理器映射器,根据url及一些配置规则(xml配置、注解配置)查找Handler,将Handler返回给DispatcherServlet前端控制器

第四步:DispatcherServlet前端控制器调用适配器执行Handler,有了适配器通过适配器去扩展对不同Handler执行方式(比如:原始servlet开发,注解开发)

第五步:适配器执行Handler

Handler是后端控制器,当成模型。

第六步:Handler执行完成返回ModelAndView

ModelAndView:springmvc的一个对象,对Model和view进行封装。

第七步:适配器将ModelAndView返回给DispatcherServlet

 

第八步:DispatcherServlet调用视图解析器进行视图解析,解析后生成view

视图解析器根据逻辑视图名解析出真正的视图。

View:springmvc视图封装对象,提供了很多view,jsp、freemarker、pdf、excel。。。

第九步:ViewResolver视图解析器给前端控制器返回view

第十步:DispatcherServlet调用view的渲染视图的方法,将模型数据填充到request域


第十一步:DispatcherServlet向用户响应结果(jsp页面、json数据。。。。)

 

 

 

DispatcherServlet:前端控制器,由springmvc提供

 

HandlerMappting:处理器映射器,由springmvc提供

 

HandlerAdapter:处理器适配器,由springmvc提供

 

Handler:处理器,需要程序员开发

 

ViewResolver:视图解析器,由springmvc提供

 

View:真正视图页面需要由程序编写


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息