# Package org.springframework.beans.factory.support

@NonNullApi @NonNullFields package org.springframework.beans.factory.support
Classes supporting the `org.springframework.beans.factory` package. Contains abstract base classes for `BeanFactory` implementations.

Related Packages
Package
Description
org.springframework.beans.factory
The core package implementing Spring's lightweight Inversion of Control (IoC) container.
Class
Description
AbstractAutowireCapableBeanFactory
Abstract bean factory superclass that implements default bean creation, with the full capabilities specified by the `RootBeanDefinition` class.
AbstractBeanDefinition
Base class for concrete, full-fledged `BeanDefinition` classes, factoring out common properties of `GenericBeanDefinition`, `RootBeanDefinition`, and `ChildBeanDefinition`.
AbstractBeanDefinitionReader
Abstract base class for bean definition readers which implement the `BeanDefinitionReader` interface.
AbstractBeanFactory
Abstract base class for `BeanFactory` implementations, providing the full capabilities of the `ConfigurableBeanFactory` SPI.
AutowireCandidateQualifier
Qualifier for resolving autowire candidates.
AutowireCandidateResolver
Strategy interface for determining whether a specific bean definition qualifies as an autowire candidate for a specific dependency.
BeanDefinitionBuilder
Programmatic means of constructing `BeanDefinitions` using the builder pattern.
BeanDefinitionDefaults
A simple holder for `BeanDefinition` property defaults.
BeanDefinitionOverrideException
Subclass of `BeanDefinitionStoreException` indicating an invalid override attempt: typically registering a new definition for the same bean name while `DefaultListableBeanFactory.isAllowBeanDefinitionOverriding()` is `false`.
BeanDefinitionReader
Simple interface for bean definition readers that specifies load methods with `Resource` and `String` location parameters.
BeanDefinitionReaderUtils
Utility methods that are useful for bean definition reader implementations.
BeanDefinitionRegistry
Interface for registries that hold bean definitions, for example RootBeanDefinition and ChildBeanDefinition instances.
BeanDefinitionRegistryPostProcessor
Extension to the standard `BeanFactoryPostProcessor` SPI, allowing for the registration of further bean definitions before regular BeanFactoryPostProcessor detection kicks in.
BeanDefinitionValidationException
Exception thrown when the validation of a bean definition failed.
BeanDefinitionValueResolver
Helper class for use in bean factory implementations, resolving values contained in bean definition objects into the actual values applied to the target bean instance.
BeanNameGenerator
Strategy interface for generating bean names for bean definitions.
CglibSubclassingInstantiationStrategy
Default object instantiation strategy for use in BeanFactories.
ChildBeanDefinition
Bean definition for beans which inherit settings from their parent.
DefaultBeanNameGenerator
Default implementation of the `BeanNameGenerator` interface, delegating to `BeanDefinitionReaderUtils.generateBeanName(BeanDefinition, BeanDefinitionRegistry)`.
DefaultListableBeanFactory
Spring's default implementation of the `ConfigurableListableBeanFactory` and `BeanDefinitionRegistry` interfaces: a full-fledged bean factory based on bean definition metadata, extensible through post-processors.
DefaultSingletonBeanRegistry
Generic registry for shared bean instances, implementing the `SingletonBeanRegistry`.
FactoryBeanRegistrySupport
Support base class for singleton registries which need to handle `FactoryBean` instances, integrated with `DefaultSingletonBeanRegistry`'s singleton management.
GenericBeanDefinition
GenericBeanDefinition is a one-stop shop for declarative bean definition purposes.
GenericTypeAwareAutowireCandidateResolver
Basic `AutowireCandidateResolver` that performs a full generic type match with the candidate's type if the dependency is declared as a generic type (for example, `Repository<Customer>`).
InstanceSupplier<T>
Specialized `Supplier` that can be set on a `BeanDefinition` when details about the `registered bean` are needed to supply the instance.
InstantiationStrategy
Interface responsible for creating instances corresponding to a root bean definition.
LookupOverride
Represents an override of a method that looks up an object in the same IoC context, either by bean name or by bean type (based on the declared method return type).
ManagedArray
Tag collection class used to hold managed array elements, which may include runtime bean references (to be resolved into bean objects).
ManagedList<E>
Tag collection class used to hold managed List elements, which may include runtime bean references (to be resolved into bean objects).
ManagedMap<K,V>
Tag collection class used to hold managed Map values, which may include runtime bean references (to be resolved into bean objects).
ManagedProperties
Tag class which represents a Spring-managed `Properties` instance that supports merging of parent/child definitions.
ManagedSet<E>
Tag collection class used to hold managed Set values, which may include runtime bean references (to be resolved into bean objects).
MergedBeanDefinitionPostProcessor
Post-processor callback interface for merged bean definitions at runtime.
MethodOverride
Object representing the override of a method on a managed object by the IoC container.
MethodOverrides
Set of method overrides, determining which, if any, methods on a managed object the Spring IoC container will override at runtime.
MethodReplacer
Interface to be implemented by classes that can reimplement any method on an IoC-managed object: the Method Injection form of Dependency Injection.
PropertiesBeanDefinitionReader
Deprecated.
as of 5.3, in favor of Spring's common bean definition formats and/or custom reader implementations
RegisteredBean
A `RegisteredBean` represents a bean that has been registered with a `BeanFactory`, but has not necessarily been instantiated.
RegisteredBean.InstantiationDescriptor
Descriptor for how a bean should be instantiated.
ReplaceOverride
Extension of `MethodOverride` that represents an arbitrary override of a method by the IoC container.
RootBeanDefinition
A root bean definition represents the merged bean definition at runtime that backs a specific bean in a Spring BeanFactory.
ScopeNotActiveException
A subclass of `BeanCreationException` which indicates that the target scope is not active, for example, in case of request or session scope.
SimpleAutowireCandidateResolver
`AutowireCandidateResolver` implementation to use when no annotation support is available.
SimpleBeanDefinitionRegistry
Simple implementation of the `BeanDefinitionRegistry` interface.
SimpleInstantiationStrategy
Simple object instantiation strategy for use in a BeanFactory.
StaticListableBeanFactory
Static `BeanFactory` implementation which allows one to register existing singleton instances programmatically.