框架执行流程
step1:用户发起请求到前端控制器
step2:前端控制器请求HandlerMapping查找Handler(可根据xml配置、注解进行查找)
step3:处理器映射器向前端控制器返回Handler
step4:前端控制器调用处理器适配器去执行Handler
step5:处理器适配器去执行Handler
step6:Handler执行完给适配器返回ModelAndView
step7:处理器适配器向前端控制器返回ModelAndView(springmvc的一个底层框架)
step8:前端控制器请求视图解析器去进行视图解析(根据逻辑视图名解析成真正的视图(jsp))
step9:视图解析器向前端控制器返回View
stpe10:前端控制器进行视图渲染(将模型数据(modelAndView对象)填充到request域)
step11:responce响应前端控制器向用户响应
组件:
前端控制器:DispatcherServlet(不需要程序员开发)
作用 接受请求 响应结果 相当于转发器
处理器映射器:HandlerMapping(不需要程序员开发)
作用 根据请求url查找Handler
处理器适配器:HandlerAdapter
作用 按照特定规则(HandlerAdapter要求的规则)去执行Handler
处理器:Handler(需要程序员自己编写)
注意 :编写Handler要按照HandlerAdapter的要求去做,这样适配器才可以正确去执行Handler
视图解析器:View resolver(不需要程序员开发)
作用 进行视图解析,根据逻辑视图名解析成真正视图(view)
视图 view (需要程序员开发)
view是一个接口 他的实现类支持不同的view类型(jsp、pdf等等)