关于jsp页面已经传了对象的值,springmvc为何有时候还要set

关于jsp页面已经传了对象的值,springmvc为什么有时候还要set?
这是修改bus对象属性的jsp页面:
<input type="text" name="busName" value="${bus.busName }>"
这是第一种情况:
public @ResponseBody ModelMap edit(Bus bus){

ModelMap model = new ModelMap();

  busService.update(bus);
  model.put("success", true);
}

return model;
}
这是第二中情况:
public @ResponseBody ModelMap edit(Bus b){

       ModelMap model = new ModelMap();
        Bus bus = busService.get(b.getId());
                  bus.setBusName(b.getBusName);
                     busService.update(bus);
model.put("success", true);
}

return model;
}
能说说为什么要有时候还要用第二种吗?不是多余的吗,既然jsp传过来的值已经set进对象里了。。。。。凌乱啊 
------解决思路----------------------
这个要看具体使用情况了,第二种方式也有可能是得到已有的对象,然后在更新,第一种每次都是一个最新的,所以这个就是问题了,还有如果你的id(主键)不是自动生成的时候,那么你更新的时候通过什么更新呢?这个就要看你的ORM框架用的啥了?
------解决思路----------------------
第一种是全量更新。
第二种是选择更新。

至于用哪种,取决于实体属性,例如要更新一个Blog实体,而Blog的创建时间、点击量、ID、作者这些属性是不需要更新的,如果全量更新的话,上述属性会全部变为空,或者你需要在JSP表单中把这些不必更新的字段放进隐藏域(但是放在隐藏域中并不安全,黑客可以改这些值)。因此这种情况是需要第二种方法——选择更新。
------解决思路----------------------
楼上说的好像是对的哦。。
------解决思路----------------------
多人操作,网络环境,防止你更新时把别人可能更新过的属性给覆盖了。