Annotation-based Container Configuration
Configure the container using annotations.
Annotation-based Configuration
Define beans using annotation-based configuration metadata on component classes.
AOT Processing
Ahead-of-time processing support in Core.
AOT Processing
Ahead-of-time processing to optimize applications, typically for GraalVM native image deployment.
ApplicationContext
Sub-interface of BeanFactory adding enterprise-specific functionality.
AspectJ Integration
Integration with AspectJ, described as the richest and most mature AOP implementation.
Autowiring
Mechanism to accomplish bean dependencies without explicit ref elements.
Bean Definition
Metadata describing class, behavior, collaborators, and settings of a bean.
Bean Overriding
Registering a bean with an already allocated identifier; to be deprecated.
Bean Overview
Overview of beans managed by the container.
Bean Scopes
Covers supported bean scopes.
BeanFactory
Advanced configuration mechanism capable of managing any type of object.
The BeanFactory API
The underlying bean container API.
Beans
Objects instantiated, assembled, and managed by a Spring IoC container.
c-namespace
XML shortcut for constructor argument values using the c namespace.
Classpath Scanning and Managed Components
Scan the classpath for managed components.
Collection Merging
Merging collections from parent and child bean definitions.
Configuration Metadata
Reflects beans and the dependencies among them.
Constructor Argument Resolution
Matching by argument type, index, or constructor parameter name.
Constructor-based Dependency Injection
Container invokes a constructor with arguments, each representing a dependency.
Data Binding and Validation
Binding and validating data, with type conversion support.
default-lazy-init
Sets lazy initialization for all beans via @Lazy on @Configuration or the XML attribute.
Dependencies and Configuration in Detail
Detailed configuration of bean dependencies.
depends-on
Attribute or @DependsOn annotation forcing beans to initialize before the dependent bean.
idref Element
Error-proof way to pass the id of another bean to a constructor-arg or property element.
Inner Beans
Beans defined inline within property or constructor-arg elements.
Instantiating Beans
Beans instantiated via constructor, static factory method, or instance factory method.
IoC Container
Core container managing beans and their dependencies.
Java-based Container Configuration
Configure the container using Java classes.
Java-based Configuration
Define beans external to application classes using @Configuration and @Bean.
Java Configuration
@Bean methods silently override scanned beans with matching component name.
Kotlin Support
Language support for Kotlin and Groovy.
@Lazy Annotation
Marks a bean definition as lazy-initialized so the container creates it on first request.
lazy-init XML Attribute
XML attribute on <bean/> controlling lazy initialization.
Lazy-initialized Beans
Beans initialized on demand rather than at startup.
Method Injection
Inject dependencies via method injection.
Naming Beans
Each bean has one or more unique identifiers; extras are aliases.
p-namespace
XML shortcut for property values using the p namespace.
ref Element
Sets a property to a reference to another bean managed by the container.
Register Singleton
DefaultListableBeanFactory registers existing singletons via registerSingleton(..).
Setter-based Dependency Injection
Dependencies are set on the object instance via properties after construction.
Spring Expression Language
Expression language for querying and manipulating objects at runtime.
Spring AOP Framework
Spring's own AOP framework addressing common Java enterprise AOP requirements.
Spring Framework Documentation
Spring MVC
Servlet-based web framework.
Spring WebFlux
Reactive web framework.
TestContext Framework
Testing support with mock objects and Spring MVC Test.
Testing Support
Mock objects, TestContext Framework, Spring MVC Test, WebTestClient.
Transaction Management
Data access transaction support.
Spring WebFlux
Reactive web framework.
XML Configuration
XML-based metadata configures beans as <bean/> elements inside <beans/>.