ModelMap
sottoclassi LinkedHashMap
, e fornisce alcune comodità supplementari per renderlo un po 'più facile da usare dai controllori
addAttribute
può essere chiamato con solo un valore, e la chiave della mappa viene poi dedotto dal tipo.
- I metodi
addAttribute
restituiscono tutti ModelMap
, quindi è possibile chiamare insieme il metodo a catena, ad es. modelMap.addAttribute('x', x).addAttribute('y',y)
- I metodi
addAttribute
controlla che i valori non sono nulli
- Il tipo generico di
ModelMap
è fissato a Map<String, Object>
, che è l'unico che ha senso per un modello di vista.
Quindi niente sconvolgente, ma abbastanza da renderlo un po 'più bello di un raw Map
. La primavera ti permetterà di usare l'una o l'altra.
È inoltre possibile utilizzare l'interfaccia Model
, che non fornisce altro che i metodi addAttribute
ed è implementata dalla classe ExtendedModelMap
che a sua volta aggiunge ulteriori vantaggi.
Descrizione molto bella. Voglio sapere la differenza tra i metodi 'ModelMap.put' e' ModelMap.addAttribute'. So che il metodo put è disponibile perché estende LinkedHashMap. Fa alcuna differenza nelle prestazioni utilizzare uno qualsiasi dei metodi. Grazie in anticipo. –
Voglio sottolineare che questa risposta è mostrata parola per parola sul post di un altro sito Web datato aprile 2016: http://crunchify.com/spring-mvc-how-to-access-modelmap-values-in -a-jsp / – ndurante