Spring的BeanDefinitionReader
Spring的BeanDefinition的获取
public interface BeanDefinitionReader {
//BeanDefinition的注册中心,一般都是BeanFactory
//其实就是一个存放BeanDefinition的容器,实现中数据结构为Map<beanName, BeanDefinition>
BeanDefinitionRegistry getRegistry();
//获取ResourceLoader
ResourceLoader getResourceLoader();
//加载Bean的ClassLoader,如果为null,则意味着不加载Bean,仅仅注册BeanDefinition
ClassLoader getBeanClassLoader();
//如果一个Bean没有指定名字,则使用该名字生成器来生成名字
BeanNameGenerator getBeanNameGenerator();
//从resource从加载BeanDefinition,加载后放到BeanDefinitionRegistry中
int loadBeanDefinitions(Resource resource) throws BeanDefinitionStoreException;
//从多个从resource从加载BeanDefinition
int loadBeanDefinitions(Resource... resources) throws BeanDefinitionStoreException;
//从指定的路径location中加载BeanDefinition,这个location可能是location pattern
int loadBeanDefinitions(String location) throws BeanDefinitionStoreException;
//从指定的多个路径location中加载BeanDefinition
int loadBeanDefinitions(String... locations) throws BeanDefinitionStoreException;
}参考
Last updated