浏览 2077 次
锁定老帖子 主题:BeanFactory定了IoC的基本特性
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-07-04
用户在使用容器时,可以使用转义字符“&”来得到FactoryBean本身,用来区分通过容器来获取FactoryBean产生的对象和获取FactoryBean本身。例如,myJndiObject是一个FactoryBean,那么使用&myJndiObject得到的是FactoryBean,而不是myJndiObject这个FactoryBean产生的对象。 BeanFactory接口设计了getBean方法,这个方法是使用IoC容器API的主要方法,通过此方法,可以获得IoC容器管理的Bean。如果需要在获取Bean时对Bean的类型进行检查,BeanFactory接口定义了带有参数的getBean方法。当获取bean时,需要获取的Bean是prototype类型的,用户还可以为这个prototype类型的Bean生成指定构造函数的对应参数。这使得在一定程度上可以控制生成prototype类型的Bean。有了BeanFactory的定义,用户可以执行以下操作: 1.通过接口方法containsBean让用户能够判断容器是否含有指定名字的Bean。 2.通过接口方法isSingleton来查询指定名字的Bean是否是Singleton类型的Bean。对于Singleton属性,用户可以在BeanDefinition中指定。 3.通过接口方法isPrototype来查询指定名字的Bean是否是Prototype类型的Bean.对于prototype属性,用户同样可以在BeanDefinition中指定。 4.通过接口方法isTypeMatch来查询指定名字的Bean的Class类型是否是特定的Class类型。这个Class类型可以由用户自己指定。 5.通过接口方法getType来查询指定了名字的Bean的Class类型。 6.通过接口方法getAliases来查询指定了名字的Bean的所有别名,这些别名都是用户在BeanDefinition中定义的。 BeanFactory定义这些方法,勾画出了IoC容器的基本特性。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-07-31
在我们使用的application的时候 本质上内部的BeanFatory还是DefaultListableBeanFactory这个类型,而具体的比如getBean的实现是通过AbstractAutowireCapableBeanFactory来实现的等等, 在spring的Beanfatory的家族中各个的关系很复杂 但是每一个的功能都很明确
|
|
返回顶楼 | |