技术文章 | Spring IoC 学习(3)

来源:互联网 发布:银行家算法详细流程 编辑:程序博客网 时间:2024/06/09 22:42

本文来源于阿里云-云栖社区,原文点击这里


前言

前面因为总结的累了,把IoC的两个步骤,只写了一半,就仅仅把容器启动的方面说了说,对于实例化的阶段,我前面并没有说,在这节中,准备讲一讲,实例化阶段。

生命周期

基础生命周期简图

这个部分,其实实例化,一般都是用反射或者cglib,底层封装的也比较深,我随着代码debug的过程中,也没有接触到这个部分。但是在实例化bean的过程中,还是看到了挺多东西。

生命周期的图,基本上有可能是以下这种

从图中可以看到,在这个阶段,最重要的不是实例化本身,而是实例化前后会做的一些操作。实例化有些不同的,应该就是在实例化时可能会遇到绑定属性的相关操作,这个时候不是用传统的反射来做,而是用BeanWrapper来包装绑定。有个印象即可。

BeanFactory与ApplicationContext生命周期简图

BeanFactory
ApplicationContext

以上两图为借用

各种拓展接口

各色的Aware接口

当对象实例化完成并且相关属性以及依赖设置完成之后,Spring容器会检查当前对象实例是否实现了一系列的以Aware命名结尾的接口定义。如果是,则将这些Aware接口定义中规定的依赖注入给当前对象实例。

下面总结一下各种Aware接口以及作用


 展开全文

原创粉丝点击