@NonNullApi

# Package org.springframework.data.mapping

Base package for the mapping subsystem.

See: Description

Interface Summary
AssociationHandler<P extends PersistentProperty<P>>: Callback interface to implement functionality to be applied to a collection of `Association`s.
IdentifierAccessor: Interface for a component allowing the access of identifier values.
PersistentEntity<T,P extends PersistentProperty<P>>: Represents a persistent entity.
PersistentProperty<P extends PersistentProperty<P>>
PersistentPropertyAccessor<T>: Domain service to allow accessing and setting `PersistentProperty`s of an entity.
PersistentPropertyPath<P extends PersistentProperty<P>>: Abstraction of a path of `PersistentProperty`s.
PersistentPropertyPathAccessor<T>: Extension of `PersistentPropertyAccessor` that is also able to obtain and set values for `PersistentPropertyPath`s.
PersistentPropertyPaths<T,P extends PersistentProperty<P>>: A wrapper for a collection of `PersistentPropertyPath`s.
PropertyHandler<P extends PersistentProperty<P>>: Callback interface to do something with all plain `PersistentProperty` instances except associations and transient properties.
SimpleAssociationHandler: Association handler to work with the untyped `PersistentProperty` based `Association`.
SimplePropertyHandler: A property handler to work with untyped `PersistentProperty` instances.

Class Summary
AccessOptions: Access options when using `PersistentPropertyPathAccessor` to get and set properties.
AccessOptions.GetOptions: Access options for getting values for property paths.
AccessOptions.SetOptions: Access options for setting values for property paths.
Alias: A container object which may or may not contain a type alias value.
Association<P extends PersistentProperty<P>>: Value object to capture `Association`s.
PreferredConstructor<T,P extends PersistentProperty<P>>: Value object to encapsulate the constructor to be used when mapping persistent data to objects.
PreferredConstructor.Parameter<T,P extends PersistentProperty<P>>: Value object to represent constructor parameters.
PropertyPath: Abstraction of a `PropertyPath` of a domain class.
TargetAwareIdentifierAccessor: `IdentifierAccessor` that is aware of the target bean to obtain the identifier from so that it can generate a more meaningful exception in case of an absent identifier and a call to `TargetAwareIdentifierAccessor.getRequiredIdentifier()`.
TraversalContext: A context object for lookups of values for `PersistentPropertyPaths` via a `PersistentPropertyAccessor`.

Enum Summary
AccessOptions.GetOptions.GetNulls: How to handle null values during a `PersistentPropertyPath` traversal.
AccessOptions.SetOptions.Propagation: How to propagate setting values that cross collection and map properties.
AccessOptions.SetOptions.SetNulls: How to handle intermediate null values when setting

Exception Summary
MappingException
PropertyReferenceException: Exception being thrown when creating `PropertyPath` instances.

## Package org.springframework.data.mapping Description

Base package for the mapping subsystem.