Spring Factory

时间:2022-06-08 21:50:27
  1. BeanFactory和FactoryBean均为接口;
  2. BeanFactory为IOC容器的创建提供了一个最底层的规范,主要方法包括contains(bean), getBean(class, beanName),isSingleton(name)等;子接口有ApplicationContext,ListableBeanFactory, WebApplicationContext等;实现类有AbstractApplicationContext,  AbstractBeanFactory, ClassPathXmlApplicationContext, XmlBeanFactory等;
  3. FactoryBean为IOC容器Bean提供更灵活的实现方式(使用了简单工厂模式和装饰模式);如果IOC容器中的Bean配置或实现FactoryBean, 可通过getBean(BeanName)获取一个如Student bean对象,但getBean(&BeanName)可得到生成该Student的Factory bean对象。子接口有SmartFactoryBean;实现类有 AbstractFactoryBean,JndiObjectFactoryBean等;