类 BeanDefinitionReaderUtils
- java.lang.Object
- org.springframework.beans.factory.support.BeanDefinitionReaderUtils
public class BeanDefinitionReaderUtils extends Object
Utility methods that are useful for bean definition reader implementations. Mainly intended for internal use.- 从以下版本开始:
- 1.1
- 作者:
- Juergen Hoeller, Rob Harrop
- 另请参阅:
PropertiesBeanDefinitionReader,DefaultBeanDefinitionDocumentReader
字段概要
字段 修饰符和类型 字段 说明 static StringGENERATED_BEAN_NAME_SEPARATORSeparator for generated bean names.
构造器概要
构造器 构造器 说明 BeanDefinitionReaderUtils()
方法概要
所有方法 静态方法 具体方法 修饰符和类型 方法 说明 static AbstractBeanDefinitioncreateBeanDefinition(String parentName, String className, ClassLoader classLoader)Create a new GenericBeanDefinition for the given parent name and class name, eagerly loading the bean class if a ClassLoader has been specified.static StringgenerateBeanName(BeanDefinition beanDefinition, BeanDefinitionRegistry registry)Generate a bean name for the given top-level bean definition, unique within the given bean factory.static StringgenerateBeanName(BeanDefinition definition, BeanDefinitionRegistry registry, boolean isInnerBean)Generate a bean name for the given bean definition, unique within the given bean factory.static voidregisterBeanDefinition(BeanDefinitionHolder definitionHolder, BeanDefinitionRegistry registry)Register the given bean definition with the given bean factory.static StringregisterWithGeneratedName(AbstractBeanDefinition definition, BeanDefinitionRegistry registry)Register the given bean definition with a generated name, unique within the given bean factory.
字段详细资料
GENERATED_BEAN_NAME_SEPARATOR
public static final String GENERATED_BEAN_NAME_SEPARATOR
Separator for generated bean names. If a class name or parent name is not unique, "#1", "#2" etc will be appended, until the name becomes unique.- 另请参阅:
- 常量字段值
构造器详细资料
BeanDefinitionReaderUtils
public BeanDefinitionReaderUtils()
方法详细资料
createBeanDefinition
public static AbstractBeanDefinition createBeanDefinition(String parentName, String className, ClassLoader classLoader) throws ClassNotFoundException
Create a new GenericBeanDefinition for the given parent name and class name, eagerly loading the bean class if a ClassLoader has been specified.- 参数:
parentName- the name of the parent bean, if anyclassName- the name of the bean class, if anyclassLoader- the ClassLoader to use for loading bean classes (can benullto just register bean classes by name)- 返回:
- the bean definition
- 抛出:
ClassNotFoundException- if the bean class could not be loaded
generateBeanName
public static String generateBeanName(BeanDefinition beanDefinition, BeanDefinitionRegistry registry) throws BeanDefinitionStoreException
Generate a bean name for the given top-level bean definition, unique within the given bean factory.- 参数:
beanDefinition- the bean definition to generate a bean name forregistry- the bean factory that the definition is going to be registered with (to check for existing bean names)- 返回:
- the generated bean name
- 抛出:
BeanDefinitionStoreException- if no unique name can be generated for the given bean definition- 另请参阅:
generateBeanName(BeanDefinition, BeanDefinitionRegistry, boolean)
generateBeanName
public static String generateBeanName(BeanDefinition definition, BeanDefinitionRegistry registry, boolean isInnerBean) throws BeanDefinitionStoreException
Generate a bean name for the given bean definition, unique within the given bean factory.- 参数:
definition- the bean definition to generate a bean name forregistry- the bean factory that the definition is going to be registered with (to check for existing bean names)isInnerBean- whether the given bean definition will be registered as inner bean or as top-level bean (allowing for special name generation for inner beans versus top-level beans)- 返回:
- the generated bean name
- 抛出:
BeanDefinitionStoreException- if no unique name can be generated for the given bean definition
registerBeanDefinition
public static void registerBeanDefinition(BeanDefinitionHolder definitionHolder, BeanDefinitionRegistry registry) throws BeanDefinitionStoreException
Register the given bean definition with the given bean factory.- 参数:
definitionHolder- the bean definition including name and aliasesregistry- the bean factory to register with- 抛出:
BeanDefinitionStoreException- if registration failed
registerWithGeneratedName
public static String registerWithGeneratedName(AbstractBeanDefinition definition, BeanDefinitionRegistry registry) throws BeanDefinitionStoreException
Register the given bean definition with a generated name, unique within the given bean factory.- 参数:
definition- the bean definition to generate a bean name forregistry- the bean factory to register with- 返回:
- the generated bean name
- 抛出:
BeanDefinitionStoreException- if no unique name can be generated for the given bean definition or the definition cannot be registered