码迷,mamicode.com
首页 > 其他好文 > 详细

ModelMap对象的 addAttribute,put两个方法区别

时间:2018-01-30 19:48:20      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:bsp   说明   post   extends   except   mode   public   lan   model   

 

这个是 源码中 ModelMap的定义 类  
public class ModelMap extends LinkedHashMap<String, Object>

说明 ModelMap是继承自LinkedHashMap的,则put方法是继承自 HashMap的方法,没什么特殊
而addAttribute方法的定义
public ModelMap addAttribute(String attributeName, Object attributeValue)
{
Assert.notNull(attributeName, "Model attribute name must not be null");
put(attributeName, attributeValue);
return this;
}
其实也是调用的put方法,但是会在调用之前判断 key值是否为null,如果为null则会报错
java.lang.IllegalArgumentException: Model attribute name must not be null,而put方法不会检查key值是否会空
综上,则
ModelMap对象的 addAttribute,put两个方法有什么区别就是
addAttribute是不允许添加空值的key,put是允许的

ModelMap对象的 addAttribute,put两个方法区别

标签:bsp   说明   post   extends   except   mode   public   lan   model   

原文地址:https://www.cnblogs.com/libin6505/p/8386244.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!