Spring容器中的Bean是何时创建的?为什么我们能从容器中获取到?

非懒加载的单实例bean会在容器创建的时候创建。容器内部会创建一个beanFactory,使用beanFactory的doGetBean方法来进行创建,并且在创建后会把bean放入一个单例bean的map集合(singletonObjects)中存储。key就是我们配置的bean的名称。所以我们调用容器的getBean方法来获取对象的时候,其实也是调用了doGetBean方法。就会从对应的集合中获取到之前创建的对象