spring–FactoryBean
FactoryBean和BeanFactory经常面试都会问到区别是什么。BeanFactory我们都知道spring
IOC核心容器里面存储了很多关于bean的信息。我们平常getBean都是从这个容器获取的。而FactoryBean是spring IOC容器提供的特殊bean,这个bean可以说是某个bean的包装,它既是一个bean也可以产生bean。
FactoryBean接口提供三个方法,getObject能够返回实例对象。也就是说我们可以将一个自己实例完的对象放在此方法中,借助FactoryBean被spring容器管理,实际上spring容器管理的是FactoryBean 这个bean。而spring底层在getBean的时候会去判断这个bean是不是FactoryBean ,如果是FactoryBean 就调用他的getObject方法。
注意:mybatis就是利用实现FactoryBean接口将自己的mapper扫描对象交给spring容器管理。
----纯属个人简单见解后期会不断的完善。