springMVC核心组件执行原理

HandlerMapping、HandlrAdapter.4.0版本可不配置,用默认的。
SpringMVC应用的开发步骤
1.通过web.xml配置的前端控制器和拦截器,拦截用户请求。
2.定义用户请求的Handle类,可通过实现Controllre类或者@Controller注解,前端控制器分发请求至Handle(即该Controller类),前端控制根据拦截器中uri调用Controller的方法(约定的方式代替配置),处理请求。
3.Handle处理用户请求后,返回一个ModelAndView对象,包含视图和数据。

Spring执行的流程


clipboard.png

1.用户在客户端发起请求
2.前端控制器拦截请求
3.解析URL,得到URI,调用HandlerMapping得到HandlerExecutionChain(包括:Handler对象和拦截器)
4.前端控制器根据获得的Handler(处理映射器),选择一个合适HandlerAdapter(处理适配器)(存储多个Handler),adapter调用Handler中实际处理请求的方法
5.执行Handler,解析参数
6.执行完成返回一个ModelAndView对象(模型数据和视图)
7.根据ModelAndView对象,调用的ViewResolver进行对象解析,返回一个填充了模型数据的view给前端控制器
8.前端控制器通过ModelAndView来渲染视图
9.将视图响应给客户端

你可能感兴趣的:(springMVC核心组件执行原理)