當前位置:編程學習大全網 - 網站源碼 - freemarker 整合springmvc時, ModelMap對象的 addAttribute,put兩個方法有什麽區別

freemarker 整合springmvc時, ModelMap對象的 addAttribute,put兩個方法有什麽區別

addAttribute,put兩個方法繼承的方法不同。

具體見解如下:

兩者的繼承路徑不同。ModelMap是繼承自LinkedHashMap的,而LinkedHashMap繼承自HashMap,HashMap實現了Map接口,實現其put方法,因此ModelMap中的put方法是繼承自 HashMap的;

addAttribute可以檢查key值是否為空。其實也是調用的put方法,但是會在調用之前判斷 key值是否為null,如果為null則會報錯

java.lang.IllegalArgumentException: Model attribute name must not be null,而put方法不會檢查key值是否會空。

總而言之,ModelMap對象的 addAttribute,put兩個方法有什麽區別就是 ?addAttribute是不允許添加空值的key,put是允許的。

  • 上一篇:Shibor?Libor?Hibor
  • 下一篇:買吳亞的釣魚餌料在淘寶上買好還是京東上買好?
  • copyright 2024編程學習大全網