public class SessionAttributesHandler
extends java.lang.Object
@SessionAttributes. Actual storage is
 delegated to a SessionAttributeStore instance.
 When a controller annotated with @SessionAttributes adds
 attributes to its model, those attributes are checked against names and
 types specified via @SessionAttributes. Matching model attributes
 are saved in the HTTP session and remain there until the controller calls
 SessionStatus.setComplete().
| Constructor and Description | 
|---|
| SessionAttributesHandler(java.lang.Class<?> handlerType,
                        SessionAttributeStore sessionAttributeStore)Create a new session attributes handler. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | cleanupAttributes(WebRequest request)Remove "known" attributes from the session, i.e. | 
| boolean | hasSessionAttributes()Whether the controller represented by this instance has declared any
 session attributes through an  SessionAttributesannotation. | 
| boolean | isHandlerSessionAttribute(java.lang.String attributeName,
                         java.lang.Class<?> attributeType)Whether the attribute name or type match the names and types specified
 via  @SessionAttributeson the underlying controller. | 
| java.util.Map<java.lang.String,java.lang.Object> | retrieveAttributes(WebRequest request)Retrieve "known" attributes from the session, i.e. | 
| void | storeAttributes(WebRequest request,
               java.util.Map<java.lang.String,?> attributes)Store a subset of the given attributes in the session. | 
public SessionAttributesHandler(java.lang.Class<?> handlerType,
                                SessionAttributeStore sessionAttributeStore)
@SessionAttributes annotation, if present,
 on the given type.handlerType - the controller typesessionAttributeStore - used for session accesspublic boolean hasSessionAttributes()
SessionAttributes annotation.public boolean isHandlerSessionAttribute(java.lang.String attributeName,
                                         java.lang.Class<?> attributeType)
@SessionAttributes on the underlying controller.
 Attributes successfully resolved through this method are "remembered"
 and subsequently used in retrieveAttributes(WebRequest) and
 cleanupAttributes(WebRequest).
attributeName - the attribute name to checkattributeType - the type for the attributepublic void storeAttributes(WebRequest request, java.util.Map<java.lang.String,?> attributes)
@SessionAttributes are ignored.request - the current requestattributes - candidate attributes for session storagepublic java.util.Map<java.lang.String,java.lang.Object> retrieveAttributes(WebRequest request)
@SessionAttributes or attributes previously stored
 in the model that matched by type.request - the current requestpublic void cleanupAttributes(WebRequest request)
@SessionAttributes or attributes previously stored
 in the model that matched by type.request - the current request