Interface Model

All Known Subinterfaces:
RedirectAttributes
All Known Implementing Classes:
BindingAwareConcurrentModel, BindingAwareModelMap, ConcurrentModel, ExtendedModelMap, RedirectAttributesModelMap

public interface Model
Interface that defines a holder for model attributes.

Primarily designed for adding attributes to the model.

Allows for accessing the overall model as a java.util.Map.

Since:
2.5.1
Author:
Juergen Hoeller
  • Method Details

    • addAttribute

      Model addAttribute(String attributeName, @Nullable Object attributeValue)
      Add the supplied attribute under the supplied name.
      Parameters:
      attributeName - the name of the model attribute (never null)
      attributeValue - the model attribute value (can be null)
    • addAttribute

      Model addAttribute(Object attributeValue)
      Add the supplied attribute to this Map using a generated name.

      Note: Empty Collections are not added to the model when using this method because we cannot correctly determine the true convention name. View code should check for null rather than for empty collections as is already done by JSTL tags.

      Parameters:
      attributeValue - the model attribute value (never null)
    • addAllAttributes

      Model addAllAttributes(Collection<?> attributeValues)
      Copy all attributes in the supplied Collection into this Map, using attribute name generation for each element.
      See Also:
    • addAllAttributes

      Model addAllAttributes(Map<String,?> attributes)
      Copy all attributes in the supplied Map into this Map.
      See Also:
    • mergeAttributes

      Model mergeAttributes(Map<String,?> attributes)
      Copy all attributes in the supplied Map into this Map, with existing objects of the same name taking precedence (i.e. not getting replaced).
    • containsAttribute

      boolean containsAttribute(String attributeName)
      Does this model contain an attribute of the given name?
      Parameters:
      attributeName - the name of the model attribute (never null)
      Returns:
      whether this model contains a corresponding attribute
    • getAttribute

      @Nullable Object getAttribute(String attributeName)
      Return the attribute value for the given name, if any.
      Parameters:
      attributeName - the name of the model attribute (never null)
      Returns:
      the corresponding attribute value, or null if none
      Since:
      5.2
    • asMap

      Map<String,Object> asMap()
      Return the current set of model attributes as a Map.