1、BeanFactory和FactoryBean都是接口
2、BeanFactory是个Factory,是对象工厂即IOC容器,用来管理Bean对象
3、FactoryBean是个Bean,是一个能生成对象的特殊的Bean,用于实例化生成一些配置比较复杂的Bean对象
4、Factory管理Bean,所以可以通过BeanFactory获取FactoryBean对象。如果通过beanName的形式获取,实际调用的是FactoryBean.getObject()方法获取对象,如果想获取FactoryBean对象,则需要通过在beanName前加&进行获取,即:
beanFactory.getBean(BeanFactory.FACTORY_BEAN_PREFIX + "test");