接口 BeanCreateContext
-
- 所有已知实现类:
ApplicationContextUtil,BeanCreateContextUtil
public interface BeanCreateContextbean创建相关的接口, 包含创建时候的循环依赖的判断。
-
-
方法概要
所有方法 实例方法 抽象方法 修饰符和类型 方法 说明 voidcheckFieldDefinitions(Set<FieldDefinition> annotationFiledDefinitions)检验字段的注入对象voidcheckInitMethod(MethodDefinition methodBeanInvoke)检查init方法是否符合要求voidcheckMethodParam(MethodDefinition methodBeanInvoke)检验方法的参数注入对象BeanDefinitioncreateBean(BeanDefinition beanDefinition)开始创建beanvoiddoInitMethod(BeanDefinition beanDefinition)调用beanBeanCreateStrategygetBeanCreateStrategy(BeanTypeEnum beanTypeEnum)获取一种bean的类型创建策略voidinjectFieldValue(BeanDefinition beanDefinition)设置bean的字段属性值booleanisCircularDependenceBeanDefinition(BeanDefinition beanDefinition)判断BeanDefinition是否是循环依赖, 同时也把当前的BeanDefinition放入正在创建的bean的缓存中BeanDefinitionnewInstance(BeanDefinition beanDefinition)初始化bean的第一步,通过反射生成对象, 同时改变下状态.voidputBeanCreateStrategy(BeanCreateStrategy beanCreateStrategy)增加一种bean的类型创建策略voidremoveCreatingBeanDefinition(BeanDefinition beanDefinition)移除正在创建中的bean
-
-
-
方法详细资料
-
putBeanCreateStrategy
void putBeanCreateStrategy(BeanCreateStrategy beanCreateStrategy)
增加一种bean的类型创建策略- 参数:
beanCreateStrategy-
-
getBeanCreateStrategy
BeanCreateStrategy getBeanCreateStrategy(BeanTypeEnum beanTypeEnum)
获取一种bean的类型创建策略- 参数:
beanTypeEnum-
-
removeCreatingBeanDefinition
void removeCreatingBeanDefinition(BeanDefinition beanDefinition)
移除正在创建中的bean- 参数:
beanDefinition-
-
isCircularDependenceBeanDefinition
boolean isCircularDependenceBeanDefinition(BeanDefinition beanDefinition)
判断BeanDefinition是否是循环依赖, 同时也把当前的BeanDefinition放入正在创建的bean的缓存中- 参数:
beanDefinition-- 返回:
-
createBean
BeanDefinition createBean(BeanDefinition beanDefinition)
开始创建bean- 参数:
beanDefinition-- 返回:
-
checkFieldDefinitions
void checkFieldDefinitions(Set<FieldDefinition> annotationFiledDefinitions)
检验字段的注入对象- 参数:
annotationFiledDefinitions-
-
newInstance
BeanDefinition newInstance(BeanDefinition beanDefinition)
初始化bean的第一步,通过反射生成对象, 同时改变下状态. 单独提取出来是因为很多地方会使用到这个方法- 参数:
beanDefinition-- 返回:
-
checkMethodParam
void checkMethodParam(MethodDefinition methodBeanInvoke)
检验方法的参数注入对象- 参数:
methodBeanInvoke-
-
checkInitMethod
void checkInitMethod(MethodDefinition methodBeanInvoke)
检查init方法是否符合要求- 参数:
methodBeanInvoke-
-
doInitMethod
void doInitMethod(BeanDefinition beanDefinition)
调用bean- 参数:
beanDefinition-
-
injectFieldValue
void injectFieldValue(BeanDefinition beanDefinition)
设置bean的字段属性值- 参数:
beanDefinition-
-
-