Bean生命周期一般有下面的四个阶段:
-
Bean的定义
-
Bean的初始化
-
Bean的生存期
-
Bean的销毁
Bean的定义过程:
-
第一步,资源定位,就是Spring根据我们定义的注解(@Component),找到相应的类。
-
找到了资源就开始解析,并将定义的信息保存起来,此时,并没有初始化bean,这点需要注意。
-
然后将bean的定义发布到SpringIoc的容器中,此时,SpringIoc的容器中还是没有Bean的生成。只是定义的信息。
Bean的初始化
经过Bean的定义,初始化,Spring会继续完成Bean的实例化和依赖注入,这样从IoC容器中就可以得到一个依赖注入完成的Bean。下图是初始化图的示例:
Bean的生命周期