# 程序包的使用
org.springframework.beans.factory.config

- 使用org.springframework.beans.factory.config的程序包
  程序包 | 说明
  --- | ---
  org.springframework.beans.factory.annotation | Support package for annotation-driven bean configuration.
  org.springframework.beans.factory.config | SPI interfaces and configuration-related convenience classes for bean factories.
  org.springframework.beans.factory.parsing | Support infrastructure for bean definition parsing.
  org.springframework.beans.factory.serviceloader | Support package for the Java 6 ServiceLoader facility.
  org.springframework.beans.factory.support | Classes supporting the `org.springframework.beans.factory` package.
  org.springframework.beans.factory.xml | Contains an abstract XML-based `BeanFactory` implementation, including a standard "spring-beans" XSD.

- org.springframework.beans.factory.annotation使用的org.springframework.beans.factory.config中的类
  类和说明
  BeanDefinition A BeanDefinition describes a bean instance, which has property values, constructor argument values, and further information supplied by concrete implementations.
  BeanDefinitionHolder Holder for a BeanDefinition with name and aliases.
  BeanFactoryPostProcessor Allows for custom modification of an application context's bean definitions, adapting the bean property values of the context's underlying bean factory.
  BeanPostProcessor 后置处理器接口,系统默认的有7个名称分别为: 1:ApplicationContextAwareProcessor 直接实现了 BeanPostProcessor 用来直接处理我们的组件是否实现了ApplicationContextAware接口的作用,往我们容器中注册回调ApplicationContext接口 起作用的接口:postProcessBeforeInitialization()方法来进行回调我们的aware接口的 执行时间：我们的Bean进行了调用了构造方法之后，初始化之前 2:CommonAnnotationBeanPostProcessor extends InitDestroyAnnotationBeanPostProcessor 用于处理@PostCust @Predestory注解的 implements InstantiationAwareBeanPostProcessor 实例化执行 :用来处理JSR250规范的注解的。。。。。。。。。
  ConfigurableListableBeanFactory Configuration interface to be implemented by most listable bean factories.
  DependencyDescriptor Descriptor for a specific dependency that is about to be injected.
  DestructionAwareBeanPostProcessor Subinterface of `BeanPostProcessor` that adds a before-destruction callback.
  InstantiationAwareBeanPostProcessor Subinterface of `BeanPostProcessor` that adds a before-instantiation callback, and a callback after instantiation but before explicit properties are set or autowiring occurs.
  InstantiationAwareBeanPostProcessorAdapter Adapter that implements all methods on `SmartInstantiationAwareBeanPostProcessor` as no-ops, which will not change normal processing of each bean instantiated by the container.
  SmartInstantiationAwareBeanPostProcessor Extension of the `InstantiationAwareBeanPostProcessor` interface, adding a callback for predicting the eventual type of a processed bean.

- org.springframework.beans.factory.config使用的org.springframework.beans.factory.config中的类
  类和说明
  AbstractFactoryBean Simple template superclass for `FactoryBean` implementations that creates a singleton or a prototype object, depending on a flag.
  AutowireCapableBeanFactory
  BeanDefinition A BeanDefinition describes a bean instance, which has property values, constructor argument values, and further information supplied by concrete implementations.
  BeanDefinitionHolder Holder for a BeanDefinition with name and aliases.
  BeanExpressionContext Context object for evaluating an expression within a bean definition.
  BeanExpressionResolver Strategy interface for resolving a value through evaluating it as an expression, if applicable.
  BeanFactoryPostProcessor Allows for custom modification of an application context's bean definitions, adapting the bean property values of the context's underlying bean factory.
  BeanPostProcessor 后置处理器接口,系统默认的有7个名称分别为: 1:ApplicationContextAwareProcessor 直接实现了 BeanPostProcessor 用来直接处理我们的组件是否实现了ApplicationContextAware接口的作用,往我们容器中注册回调ApplicationContext接口 起作用的接口:postProcessBeforeInitialization()方法来进行回调我们的aware接口的 执行时间：我们的Bean进行了调用了构造方法之后，初始化之前 2:CommonAnnotationBeanPostProcessor extends InitDestroyAnnotationBeanPostProcessor 用于处理@PostCust @Predestory注解的 implements InstantiationAwareBeanPostProcessor 实例化执行 :用来处理JSR250规范的注解的。。。。。。。。。
  BeanReference Interface that exposes a reference to a bean name in an abstract fashion.
  ConfigurableBeanFactory Configuration interface to be implemented by most bean factories.
  ConfigurableListableBeanFactory Configuration interface to be implemented by most listable bean factories.
  ConstructorArgumentValues Holder for constructor argument values, typically as part of a bean definition.
  ConstructorArgumentValues.ValueHolder Holder for a constructor argument value, with an optional type attribute indicating the target type of the actual constructor argument.
  DependencyDescriptor Descriptor for a specific dependency that is about to be injected.
  InstantiationAwareBeanPostProcessor Subinterface of `BeanPostProcessor` that adds a before-instantiation callback, and a callback after instantiation but before explicit properties are set or autowiring occurs.
  MethodInvokingBean Simple method invoker bean: just invoking a target method, not expecting a result to expose to the container (in contrast to `MethodInvokingFactoryBean`).
  NamedBeanHolder A simple holder for a given bean name plus bean instance.
  PlaceholderConfigurerSupport Abstract base class for property resource configurers that resolve placeholders in bean definition property values.
  PropertyPlaceholderConfigurer `PlaceholderConfigurerSupport` subclass that resolves ${...} placeholders against `local` `properties` and/or system properties and environment variables.
  PropertyResourceConfigurer Allows for configuration of individual bean property values from a property resource, i.e. a properties file.
  Scope Strategy interface used by a `ConfigurableBeanFactory`, representing a target scope to hold bean instances in.
  SingletonBeanRegistry Interface that defines a registry for shared bean instances.
  SmartInstantiationAwareBeanPostProcessor Extension of the `InstantiationAwareBeanPostProcessor` interface, adding a callback for predicting the eventual type of a processed bean.
  YamlProcessor Base class for YAML factories.
  YamlProcessor.DocumentMatcher Strategy interface used to test if properties match.
  YamlProcessor.MatchCallback Callback interface used to process the YAML parsing results.
  YamlProcessor.MatchStatus Status returned from `YamlProcessor.DocumentMatcher.matches(java.util.Properties)`
  YamlProcessor.ResolutionMethod Method to use for resolving resources.

- org.springframework.beans.factory.parsing使用的org.springframework.beans.factory.config中的类
  类和说明
  BeanDefinition A BeanDefinition describes a bean instance, which has property values, constructor argument values, and further information supplied by concrete implementations.
  BeanDefinitionHolder Holder for a BeanDefinition with name and aliases.
  BeanReference Interface that exposes a reference to a bean name in an abstract fashion.

- org.springframework.beans.factory.serviceloader使用的org.springframework.beans.factory.config中的类
  类和说明
  AbstractFactoryBean Simple template superclass for `FactoryBean` implementations that creates a singleton or a prototype object, depending on a flag.

- org.springframework.beans.factory.support使用的org.springframework.beans.factory.config中的类
  类和说明
  AutowireCapableBeanFactory
  BeanDefinition A BeanDefinition describes a bean instance, which has property values, constructor argument values, and further information supplied by concrete implementations.
  BeanDefinitionCustomizer Callback for customizing a given bean definition.
  BeanDefinitionHolder Holder for a BeanDefinition with name and aliases.
  BeanExpressionResolver Strategy interface for resolving a value through evaluating it as an expression, if applicable.
  BeanFactoryPostProcessor Allows for custom modification of an application context's bean definitions, adapting the bean property values of the context's underlying bean factory.
  BeanPostProcessor 后置处理器接口,系统默认的有7个名称分别为: 1:ApplicationContextAwareProcessor 直接实现了 BeanPostProcessor 用来直接处理我们的组件是否实现了ApplicationContextAware接口的作用,往我们容器中注册回调ApplicationContext接口 起作用的接口:postProcessBeforeInitialization()方法来进行回调我们的aware接口的 执行时间：我们的Bean进行了调用了构造方法之后，初始化之前 2:CommonAnnotationBeanPostProcessor extends InitDestroyAnnotationBeanPostProcessor 用于处理@PostCust @Predestory注解的 implements InstantiationAwareBeanPostProcessor 实例化执行 :用来处理JSR250规范的注解的。。。。。。。。。
  ConfigurableBeanFactory Configuration interface to be implemented by most bean factories.
  ConfigurableListableBeanFactory Configuration interface to be implemented by most listable bean factories.
  ConstructorArgumentValues Holder for constructor argument values, typically as part of a bean definition.
  DependencyDescriptor Descriptor for a specific dependency that is about to be injected.
  NamedBeanHolder A simple holder for a given bean name plus bean instance.
  Scope Strategy interface used by a `ConfigurableBeanFactory`, representing a target scope to hold bean instances in.
  SingletonBeanRegistry Interface that defines a registry for shared bean instances.

- org.springframework.beans.factory.xml使用的org.springframework.beans.factory.config中的类
  类和说明
  AutowireCapableBeanFactory
  BeanDefinition A BeanDefinition describes a bean instance, which has property values, constructor argument values, and further information supplied by concrete implementations.
  BeanDefinitionHolder Holder for a BeanDefinition with name and aliases.
  ConfigurableBeanFactory Configuration interface to be implemented by most bean factories.
  ConfigurableListableBeanFactory Configuration interface to be implemented by most listable bean factories.
  SingletonBeanRegistry Interface that defines a registry for shared bean instances.
  TypedStringValue Holder for a typed String value.