【问题标题】:spring - difference between request.setAttribute and model.addAttribute?spring - request.setAttribute 和 model.addAttribute 之间的区别?
【发布时间】:2012-02-29 10:55:13
【问题描述】:

谁能告诉我spring web app中request.setAttributemodel.addAttribute的区别?

【问题讨论】:

    标签: spring


    【解决方案1】:

    不同之处在于,Model 是一个抽象。您可以将 Spring 与 servlet、portlet 或其他前端技术一起使用,并且模型属性将始终在您各自的视图中可用。

    另一方面,HttpServletRequest 是特定于 Servlet 的对象。 Spring 也会让请求属性在你的视图中可用,就像模型属性一样,所以从用户的角度来看并没有太大的区别。

    另一方面是模型更轻量级,使用起来更方便(例如,在模型映射中迭代所有属性比在请求中更容易)。

    【讨论】:

    • 通常,添加到模型中的属性不习惯使用request.getAttribute('attrName') 还是EL?那么,request.setAttribute 和 model.addAttribute 在遍历所有属性时是否有区别
    【解决方案2】:

    请求 V/s 模型

    request 可以通过 getAttribute("") 方法获取属性。通常它用于从定义的属性中获取信息,并在方法内部使用以执行不同的操作。所以基本上 Request 用于输入。

    和Request一样,模型提供了addAttribute("","")方法,通过这个模型,我们可以在模型对象内部制作对象和存储数据,然后部署到结果服务器页面上。基本用于存储输入数据由我们提供并储存一段时间。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-09-25
      • 2014-06-27
      • 2015-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-24
      • 2013-04-29
      相关资源
      最近更新 更多