# Package org.springframework.core.annotation

@NonNullApi @NonNullFields package org.springframework.core.annotation
Core support package for annotations, meta-annotations, and merged annotations with attribute overrides.

Related Packages
Package
Description
org.springframework.core
Provides basic classes for exception handling and version detection, and other core helpers that are not specific to any part of the framework.
Class
Description
AliasFor
`@AliasFor` is an annotation that is used to declare aliases for annotation attributes.
AnnotatedElementUtils
General utility methods for finding annotations, meta-annotations, and repeatable annotations on `AnnotatedElements`.
AnnotatedMethod
A convenient wrapper for a `Method` handle, providing deep annotation introspection on methods and method parameters, including the exposure of interface-declared parameter annotations from the concrete target method.
AnnotationAttributes
`LinkedHashMap` subclass representing annotation attribute key-value pairs as read by `AnnotationUtils`, `AnnotatedElementUtils`, and Spring's reflection- and ASM-based `AnnotationMetadata` implementations.
AnnotationAwareOrderComparator
`AnnotationAwareOrderComparator` is an extension of `OrderComparator` that supports Spring's `Ordered` interface as well as the `@Order` and `@Priority` annotations, with an order value provided by an `Ordered` instance overriding a statically defined annotation value (if any).
AnnotationConfigurationException
Thrown by `AnnotationUtils` and synthesized annotations if an annotation is improperly configured.
AnnotationFilter
Callback interface that can be used to filter specific annotation types.
AnnotationUtils
General utility methods for working with annotations, handling meta-annotations, bridge methods (which the compiler generates for generic declarations) as well as super methods (for optional annotation inheritance).
MergedAnnotation<A extends Annotation>
A single merged annotation returned from a `MergedAnnotations` collection.
MergedAnnotation.Adapt
Adaptations that can be applied to attribute values when creating Maps or `AnnotationAttributes`.
MergedAnnotationCollectors
`Collector` implementations that provide various reduction operations for `MergedAnnotation` instances.
MergedAnnotationPredicates
Predicate implementations that provide various test operations for `MergedAnnotations`.
MergedAnnotations
Provides access to a collection of merged annotations, usually obtained from a source such as a `Class` or `Method`.
MergedAnnotations.Search
Fluent API for configuring the search algorithm used in the `MergedAnnotations` model and performing a search.
MergedAnnotations.SearchStrategy
Search strategies supported by `MergedAnnotations.search(SearchStrategy)` as well as `MergedAnnotations.from(AnnotatedElement, SearchStrategy)` and variants of that method.
MergedAnnotationSelector<A extends Annotation>
Strategy interface used to select between two `MergedAnnotation` instances.
MergedAnnotationSelectors
`MergedAnnotationSelector` implementations that provide various options for `MergedAnnotation` instances.
Order
`@Order` defines the sort order for an annotated component.
OrderUtils
General utility for determining the order of an object based on its type declaration.
RepeatableContainers
Strategy used to determine annotations that act as containers for other annotations.
SynthesizingMethodParameter
A `MethodParameter` variant which synthesizes annotations that declare attribute aliases via `@AliasFor`.