Package org.springframework.context.annotation
@NonNullApi
@NonNullFields
package org.springframework.context.annotation
Annotation support for the Application Context, including JSR-250 "common"
annotations, component-scanning, and Java-based metadata for creating
Spring-managed objects.
-
ClassDescriptionEnumeration used to determine whether JDK proxy-based or AspectJ weaving-based advice should be applied.AdviceModeImportSelector<A extends Annotation>Convenient base class for
ImportSelector
implementations that select imports based on anAdviceMode
value from an annotation (such as the@Enable*
annotations).Convenient adapter for programmatic registration of bean classes.BeanNameGenerator
implementation for bean classes annotated with the@Component
annotation or with another annotation that is itself annotated with@Component
as a meta-annotation.Standalone application context, accepting component classes as input — in particular@Configuration
-annotated classes, but also plain@Component
types and JSR-330 compliant classes usingjakarta.inject
annotations.Parser for the <context:annotation-config/> element.Common interface for annotation config application contexts, definingAnnotationConfigRegistry.register(java.lang.Class<?>...)
andAnnotationConfigRegistry.scan(java.lang.String...)
methods.Utility class that allows for convenient registration of commonBeanPostProcessor
andBeanFactoryPostProcessor
definitions for annotation-based configuration.AScopeMetadataResolver
implementation that by default checks for the presence of Spring's@Scope
annotation on the bean class.Registers an auto proxy creator against the currentBeanDefinitionRegistry
as appropriate based on an@Enable*
annotation havingmode
andproxyTargetClass
attributes set to the correct values.Indicates that a method produces a bean to be managed by the Spring container.A bean definition scanner that detects bean candidates on the classpath, registering corresponding bean definitions with a given registry (BeanFactory
orApplicationContext
).A component provider that provides candidate components from a base package.BeanPostProcessor
implementation that supports common Java annotations out of the box, in particular the common annotations in thejakarta.annotation
package.Class representing generic injection information about an annotated field or setter method, supporting @Resource and related annotations.Configures component scanning directives for use with @Configuration
classes.Declares the type filter to be used as an include filter or exclude filter.Parser for the<context:component-scan/>
element.Container annotation that aggregates severalComponentScan
annotations.A singlecondition
that must be matched in order for a component to be registered.Indicates that a component is only eligible for registration when all specified conditions match.Context information for use byCondition
implementations.Indicates that a class declares one or more@Bean
methods and may be processed by the Spring container to generate bean definitions and service requests for those beans at runtime, for example:BeanFactoryPostProcessor
used for bootstrapping processing of@Configuration
classes.ACondition
that offers more fine-grained control when used with@Configuration
.The various configuration phases where the condition could be evaluated.Complete implementation of theAutowireCandidateResolver
strategy interface, providing support for qualifier annotations as well as for lazy resolution driven by theLazy
annotation in thecontext.annotation
package.A variation ofImportSelector
that runs after all@Configuration
beans have been processed.Interface used to group results from different import selectors.An entry that holds theAnnotationMetadata
of the importingConfiguration
class and the class name to import.Beans on which the current bean depends.Enables support for handling components marked with AspectJ's@Aspect
annotation, similar to functionality found in Spring's<aop:aspectj-autoproxy>
XML element.Activates a SpringLoadTimeWeaver
for this application context, available as a bean with the name "loadTimeWeaver", similar to the<context:load-time-weaver>
element in Spring XML.AspectJ weaving enablement options.Enables default exporting of all standardMBean
s from the Spring context, as well as all@ManagedResource
annotated beans.Enumeration of the type filters that may be used in conjunction with@ComponentScan
.An extension ofAnnotationBeanNameGenerator
that uses the fully qualified class name as the default bean name if an explicit bean name is not supplied via a supported type-level annotation such as@Component
(seeAnnotationBeanNameGenerator
for details on supported annotations).Indicates one or more component classes to import — typically@Configuration
classes.Interface to be implemented by any @Configuration
class that wishes to be injected with theAnnotationMetadata
of the @Configuration
class that imported it.ABeanPostProcessor
that honoursImportAware
callback using a mapping computed at build time.Interface to be implemented by types that register additional bean definitions when processing @Configuration
classes.Indicates one or more resources containing bean definitions to import.Indicates that one or moreRuntimeHintsRegistrar
implementations should be processed.Interface to be implemented by types that determine which @Configuration
class(es) should be imported based on a given selection criteria, usually one or more annotation attributes.SimpleScopeMetadataResolver
implementation that follows JSR-330 scoping rules: defaulting to prototype scope unlessSingleton
is present.Indicates whether a bean is to be lazily initialized.@Configuration
class that registers aLoadTimeWeaver
bean.Interface to be implemented by@Configuration
classes annotated with@EnableLoadTimeWeaving
that wish to customize theLoadTimeWeaver
instance to be used.@Configuration
class that registers aAnnotationMBeanExporter
bean.Indicates that a bean should be given preference when multiple candidates are qualified to autowire a single-valued dependency.Indicates that a component is eligible for registration when one or more specified profiles are active.Annotation providing a convenient and declarative mechanism for adding aPropertySource
to Spring'sEnvironment
.Container annotation that aggregates severalPropertySource
annotations.Indicates the 'role' hint for a given bean.Extension of theGenericBeanDefinition
class, based on an ASM ClassReader, with support for annotation metadata exposed through theAnnotatedBeanDefinition
interface.When used as a type-level annotation in conjunction with@Component
,@Scope
indicates the name of a scope to use for instances of the annotated type.Enumerates the various scoped-proxy options.Describes scope characteristics for a Spring-managed bean including the scope name and the scoped-proxy behavior.Strategy interface for resolving the scope of bean definitions.Collection of utilities for working with@ComponentScan
type filters.