BeanFactory与FactoryBean区别
1、BeanFactory主要用于创建和管理spring bean,它自身不属于bean(不被Spring容器所管理)。提供api来管理bean。例如context.getBean(beanName)等
2、FacotoryBean本身是属于一个bean,它是被Spring容器所管理,但它与普通spring管理的bean有所不同,把它的实现类注入到Spring容器后,会存在两个bean
- 一个就是它自身bean,要从Spring容器中获取到该实例对象的方式为:context.getBean("&facotryBean"); 此处必须要添加“”&“”,不然就获取不到其自身bean实例,而是获取到它的getObject方法返回的实例对象了
- 一个就是它的getObject()方法返回的对象,要从Spring容器获取该实例的方式为:context.getBean("factoryBean");