@NonNullApi @NonNullFields

# Package org.springframework.beans.factory.annotation

Support package for annotation-driven bean configuration.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  AnnotatedBeanDefinition | Extended `BeanDefinition` interface that exposes `AnnotationMetadata` about its bean class - without requiring the class to be loaded yet.

- Class Summary
  Class | Description
  --- | ---
  AnnotatedGenericBeanDefinition | Extension of the `GenericBeanDefinition` class, adding support for annotation metadata exposed through the `AnnotatedBeanDefinition` interface.
  AnnotationBeanWiringInfoResolver | `BeanWiringInfoResolver` that uses the Configurable annotation to identify which classes need autowiring.
  AutowiredAnnotationBeanPostProcessor | `BeanPostProcessor` implementation that autowires annotated fields, setter methods, and arbitrary config methods.
  BeanFactoryAnnotationUtils | Convenience methods performing bean lookups related to Spring-specific annotations, for example Spring's `@Qualifier` annotation.
  CustomAutowireConfigurer | A `BeanFactoryPostProcessor` implementation that allows for convenient registration of custom autowire qualifier types.
  InitDestroyAnnotationBeanPostProcessor | `BeanPostProcessor` implementation that invokes annotated init and destroy methods.
  InjectionMetadata | Internal class for managing injection metadata.
  InjectionMetadata.InjectedElement | A single injected element.
  ParameterResolutionDelegate | Public delegate for resolving autowirable parameters on externally managed constructors and methods.
  QualifierAnnotationAutowireCandidateResolver | `AutowireCandidateResolver` implementation that matches bean definition qualifiers against `qualifier annotations` on the field or parameter to be autowired.
  RequiredAnnotationBeanPostProcessor | Deprecated as of 5.1, in favor of using constructor injection for required settings (or a custom `InitializingBean` implementation)

- Enum Summary
  Enum | Description
  --- | ---
  Autowire | Enumeration determining autowiring status: that is, whether a bean should have its dependencies automatically injected by the Spring container using setter injection.

- Annotation Types Summary
  Annotation Type | Description
  --- | ---
  Autowired | Marks a constructor, field, setter method, or config method as to be autowired by Spring's dependency injection facilities.
  Configurable | Marks a class as being eligible for Spring-driven configuration.
  Lookup | An annotation that indicates 'lookup' methods, to be overridden by the container to redirect them back to the `BeanFactory` for a `getBean` call.
  Qualifier | This annotation may be used on a field or parameter as a qualifier for candidate beans when autowiring.
  Required | Deprecated as of 5.1, in favor of using constructor injection for required settings (or a custom `InitializingBean` implementation)
  Value | Annotation used at the field or method/constructor parameter level that indicates a default value expression for the annotated element.

## Package org.springframework.beans.factory.annotation Description

Support package for annotation-driven bean configuration.