springmvc的原理与流程
springMVC中的几个组件:
前端控制器(DispatcherServlet):接收请求,响应结果,相当于电脑的CPU。
处理器映射器(HandlerMapping):根据URL去查找处理器
处理器(Handler):(需要程序员去写代码处理逻辑的)
处理器适配器(HandlerAdapter):会把处理器包装成适配器,这样就可以支持多种类型的处理器,类比笔记本的适配器(适配器模式的应用)
视图解析器(ViewResovler):进行视图解析,多返回的字符串,进行处理,可以解析成对应的页面
springmv的执行流程:
①用户发起请求到前端控制器(dispatchservlet)
②前端控制器(dispatchservlet)请求处理器映射器去查找处理器(handler):通过xml配置或者注解进行查找
③找到以后处理器映射器(HandlerMappering)向前端返回一个执行链(HandlerExecutionChain)
④前端控制器(dispatchservlet)请求处理器适配器(HandlerAdapter)执行处理器(handler)
⑤处理器适配器去执行handler
⑥handler执行完成之后给处理器适配器返回ModelAndView
⑦处理器适配器向前端控制器返回ModelAndView
⑧前端控制器请求视图解析器(ViewResolver)进行视图解析
⑨视图解析器向前端控制器返回view
⑩前端控制器对视图进行渲染,前端控制器向用户响应结果