IoC 容器在Spring MVC 中的启动
- web容器中的上下文
通过监听器ContextLoaderListener contextInitialized()
ContextLoader 初始化 WebApplicationContext
WebApplicationContext 默认实现类是 XmlWebApplicationContext
XmlWebApplicationContext 初始化过程中 IoC容器被建立
XmlWebApplicationContext 绑定到 ServletContext
- ContextLoader 建立根上下文
ContextLoader 是spring 应用程序在web容器中的启动器
实现了 ServletContextListener 的contextInitialized 接口,绑定容器生命周期初始化阶段
Spring MVC的启动
DispatcherServlet 启动入口程序?
HttpServletBean init 方法
Spring MVC对HTTP请求的分发处理
- mvc初始化
实现 GenericServlet init
- HandlerMapping配置
每个请求对应一个 HandlerMapping
HandlerMapping getHandler() 获得 HandlerExecutionChain 封装了具体的Controller对象
也包括连接器链 为handler做增强服务,并提供相应方法
使用HandlerMapping完成请求的映射处理
AbstractHandlerMapping getHandler()
DispatcherServlet doService--> doDispatch --> getHandler 处理结果交给视图层
Spring MVC 视图的呈现
DispatcherServlet render resolveViewName 解析视图