Sto confrontando ModelMap e Model da Spring MVC. A parte la differenza ovvia che prima è una classe e la seconda un'interfaccia c'è qualche differenza che rende preferibile l'utilizzo di uno o dell'altro in diverse situazioni?ModelMap vs Model in Spring MVC
Principalmente sono utilizzati per lo stesso scopo (come da spring MVC documentazione):
java.util.Map/org.springframework.ui.Model/ org.springframework.ui.ModelMap per arricchire la modello implicito che è esposto alla vista Web.
Solo ho trovato là fuori che ModelMap
si arricchisce Map
, tuttavia a differenza Model
è ancora chiaro.
Posso concludere da ModelMap javadoc che "Modello" è preferito per java 5?
Controllare l'interfaccia Modello per una variante di interfaccia basata su Java-5 che ha lo stesso scopo.
Tuttavia non sembra che ModelMap
sarebbe deprecato o qualcosa del genere. Ma perché ModelMap
non implementa Model
?
'ExtendedModelMap' sta estendendo' ModelMap' e attuazione 'ModelMap'. Quando si usa il 'Modello' è possibile concatenare chiamate di metodi poiché la maggior parte dei metodi restituisce' Modello' con 'Mappa' o' ModelMap', questo non è il caso. –
grazie per 'ExtendedModelMap'. AFAIK puoi anche concatenare chiamate con 'ModelMap' (a differenza di' Map' che ho già notato). – sodik
Ah si hai ragione. 'ModelMap' precede anche l'interfaccia' Modello'. Per quell'interfaccia ci sono fondamentalmente 2 implementazioni, 'ExtendedModelMap' e' RedirectAttributesModelMap' (esiste anche 'BindingAwareModelMap' che è un'estensione di' ExtendedModelMap').Per l'utilizzo nei metodi di mappatura delle richieste, non importa quale usare, anche se probabilmente suggerirei di usare l'interfaccia 'Modello' invece di una delle implementazioni. Ma questo è altamente opinato :). La risposta –