首页 课程 师资 教程 报名

Web项目中Spring容器的创建过程简要分析

  • 2021-09-13 10:48:52
  • 917次 星辉

1.配置

web.xml中配置一个ServletContextListener

即:spring提供的ContextLoaderListener

web.xml

2.源码分析

(1)在ContextLoaderListener的contextInitialized回调方法中调用initWebApplicationContext 初始化Spring的容器

ContextLoaderListener

(2)调用父类ContextLoader的实现

ContextLoader

其中ContextLoader的成员变量context是一个WebApplicationContext

成员变量 context

(3)调用configureAndRefreshWebApplicationContext,读取applicationContext.xml,初始化spring容器;然后将初始化好的容器放入ServletContext域中

initWebApplicationContext

(4)在方法configureAndRefreshWebApplicationContext中实际读取spring配置文件,初始化容器

configureAndRefreshWebApplicationContext

(5)customizeContext方法实际初始化spring的context

configureAndRefreshWebApplicationContext

(6)调用ApplicationContextInitializer的initialize方法,解析配置文件,创建bean

customizeContext

(7)创建bean。

发现BeanDefinitionDsl类竟然是一个kotlin文件!spring5.0源码中大量出现kotlin文件,看来kotlin会逐渐成为主流?

BeanDefinitionDsl

以上就是星辉小编介绍的"Web项目中Spring容器的创建过程简要分析",希望对大家有帮助,想了解更多可查看Spring框架教程。星辉星辉在线学习教程,针对没有任何Java基础的读者学习,让你从入门到精通,主要介绍了一些Java基础的核心知识,让同学们更好更方便的学习和了解Java编程,感兴趣的同学可以关注一下。

选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交