系列六、FactoryBean vs ApplicationContext

一、FactoryBean vs ApplicationContext

1.1、概述

        BeanFactory是一个工厂类,负责生产和管理bean,在Spring中BeanFactory是IOC容器的核心接口,它的主要职责就是生产bean及建立各个bean之间的依赖。applicationContext是BeanFactory的一个子接口,功能更强大。

系列六、FactoryBean vs ApplicationContext_第1张图片

1.2、相同点

都可以作为容器。

1.3、区别

FactoryBean真正生产bean,ApplicationContext不生产bean,而是通知FactoryBean来进行生产。可以理解为汽车4S店和汽车厂之间的关系;

系列六、FactoryBean vs ApplicationContext_第2张图片

1.4、使用场景

        FactoryBean 和 ApplicationContext虽然都可以作为容器管理bean,但是俗话说"物尽其责,人尽其用",每个角色都应该做自己最擅长的事儿,所以通常情况下FactoryBean用于生产bean,ApplicationContext用于门面和程序员打交道,提供更为强大的功能。

你可能感兴趣的:(Spring全家桶面试系列,java,开发语言)