DefaultListableBeanFactory容器

DefaultListableBeanFactory容器


       DefaultListableBeanFactory,是 BeanFactory 最重要的实现,像 控制反转依赖注入功能,都是它来实现。

DefaultListableBeanFactory容器_第1张图片
DefaultListableBeanFactory是spring最最最最最最最最最最最简单的容器。

我们通过编码的方式来模拟该容器对bean的管理。
基本步骤
1、创建DefaultListableBeanFactory对象(创建容器,一个最简单的spring容器

2、生成bean的描述信息(bean的定义,描述这个bean的信息,就相当于给这个bean办个身份证

3、将bean的描述信息注册到DefaultListableBeanFactory对象中(将这个bean放入到容器中)

4、可以获取bean进行操作了

public class TestDefaultListableBeanFactory {

    public static void main(String[] args) {

        //1、创建DefaultListableBeanFactory对象
        DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory();

        //2、生成bean的描述信息(bean的定义)
        AbstractBeanDefinition beanDefinition = BeanDefinitionBuilder.genericBeanDefinition(MyConfig.class).setScope("singleton").getBeanDefinition();

        //3、将bean的描述信息注册到DefaultListableBeanFactory对象中
        beanFactory.registerBeanDefinition("MyConfig",beanDefinition);

        //查看容器中bean的名称
        for (String name : beanFactory.getBeanDefinitionNames()) {
            System.out.println(name);
        }
    }
}

MyConfig配置类

class MyConfig{
}

输出
DefaultListableBeanFactory容器_第2张图片

我们可以看到上面没有用到一个spring的注解,但却创建了bean,管理了bean,操作了bean

你可能感兴趣的:(Spring源码,spring,java)