SpringMVC控制器方法參數傳入的ModelMap 和Model類型有啥區別


參考

http://blog.csdn.net/u013067598/article/details/69372309

http://blog.csdn.net/u013686993/article/details/52932079

 

可見最終傳入的是ExtendedModelMap ,它繼承了ModelMap ,實現了Model接口,

ModelMap又繼承自HashMap

 

 

 Model接口的方法

 

 

ModeMap類的方法:

 

 

ExtendedModelMap類的方法:

 

 

可見ExtendedModelMap的方法跟ModelMap都一樣,並么有增加什么,估計是功能增強了吧。

而從ModelMap開始由於繼承了HaspMap所以多了很多Map的方法

Model接口就是主要定義了往模型中添加數據的幾個方法。

 

所以參數類型寫ModelMap和Model都沒錯,寫成Map也能用,甚至還可以寫成ExtendedModelMap。

如果只是往模型里寫入數據的話,寫個Model類型參數就足夠了,能addAttribute就行,不需要HaspMap的get方法。

當然實際用的話誰還去想那么細呢,搞個ModelMap讀寫都能行就成了!

另外測試用HashMap類型的put設置模型數據視圖里也能讀取,Model接口的addAttribute估計是為了更直觀吧。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM