ListableBeanFactory可将Bean逐一列出的工厂

public interface ListableBeanFactory extends BeanFactory {

// 对于给定的名字是否含有
boolean containsBeanDefinition ( String beanName ); BeanDefinition
// 返回工厂的 BeanDefinition 总数
int getBeanDefinitionCount ();
// 返回工厂中所有 Bean 的名字
String [] getBeanDefinitionNames ();
// 返回对于指定类型 Bean (包括子类)的所有名字
String [] getBeanNamesForType ( Class <?> type );
/*
* 返回指定类型的名字
* includeNonSingletons false 表示只取单例 Bean true 则不是
* allowEagerInit true 表示立刻加载, false 表示延迟加载。
* 注意: FactoryBeans 都是立刻加载的。
*/
String [] getBeanNamesForType ( Class <?> type , boolean
includeNonSingletons ,
boolean allowEagerInit );
// 根据类型(包括子类)返回指定 Bean 名和 Bean Map
< T > Map < String , T > getBeansOfType ( Class < T > type ) throws BeansException ;
< T > Map < String , T > getBeansOfType ( Class < T > type ,
boolean includeNonSingletons , boolean allowEagerInit )
throws BeansException ;
// 根据注解类型,查找所有有这个注解的 Bean 名和 Bean Map
Map < String , Object > getBeansWithAnnotation (
Class <? extends Annotation > annotationType ) throws
BeansException ;
// 根据指定 Bean 名和注解类型查找指定的 Bean
< A extends Annotation > A findAnnotationOnBean ( String beanName ,
Class < A > annotationType );
 
}
 
3 个跟 BeanDefifinition 有关的总体操作。包括 BeanDefifinition 的总数、名字的集合、指定类型
的名字的集合。
2 getBeanNamesForType 重载方法。根据指定类型(包括子类)获取其对应的所有 Bean
名字。
2 getBeansOfType 重载方法。根据类型(包括子类)返回指定 Bean 名和 Bean Map
2 个跟注解查找有关的方法。根据注解类型,查找 Bean 名和 Bean Map 。以及根据指定
Bean 名和注解类型查找指定的 Bean
总结:
正如这个工厂接口的名字所示,这个工厂接口最大的特点就是可以列出工厂可以生产的所有实例。当
然,工厂并没有直接提供返回所有实例的方法,也没这个必要。它可以返回指定类型的所有的实例。而
且你可以通过 getBeanDefifinitionNames() 得到工厂所有 bean 的名字,然后根据这些名字得到所有的
Bean 。这个工厂接口扩展了 BeanFactory 的功能,作为上文指出的 BeanFactory 二级接口,有 9 个独有
的方法,扩展了跟 BeanDefifinition 的功能,提供了 BeanDefifinition BeanName 、注解有关的各种操
作。 它可以根据条件返回 Bean 的信息集合,这就是它名字的由来 ——ListableBeanFactory
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值