1、spring的IOC会将所有xml、class加载到IOC容器中。
2、当有一个请求 /user/query?id=1&name=ckl 进来 DispatcherServlet
3、遍历所有的 handlerMapping(处理器映射器),
1)有 SimpleUrlhandlermapping
2)BeanNameUrlHandlerMapping(遍历BeanDefintion,带有 ‘/’)
3)RequestMappingHandlerMapping(遍历BeanDefintion,通过isAnnotationPresent(),检查是否类是否使用了 Controller.class、RequestMapping.class)
4、遍历 handlerMapping 后, 找到对应的 handler(处理器)
5、通过 handler 查找到该handler的handlerAdapter(处理器适配器)
6、handlerAdapter(处理器适配器) 处理 该handler
1)获取参数
2)通过反射调用处理器(handler)的方法
3)处理返回结果(model)
7、DispatcherSerlvet 通过 ViewResolver 找对对应的而视图对象
8、View 将 model 渲染到 View(视图)上面
9、返回给前端
手写SpringMvc概要
最新推荐文章于 2024-04-30 16:09:16 发布