formbackingobject和referencedata对象如何在Spring Web MVC Cycle中运行?

Rac*_*hel 11 java spring spring-mvc

我是Spring Framework的新手,并试图理解formBackingObject的功能并将其与referenceData方法进行比较,当我尝试将它们与Spring MVC的观点相关联时,这两个对象都让我感到困惑.

如果有人可以参考一个例子解释这两个对象,我真的很感激.

问:formbacking objectreference DataObject有什么区别?

Jac*_*son 25

加载网页时,您需要将数据传递给它,以便它可以呈现.

其中一些数据纯粹是信息性的,只读的; 页面需要呈现的数据,但这不是当前事务的一部分.示例:填充下拉列表的国家/地区列表,用户可以购买的可能产品列表.

其他数据将用于读写:例如,表单的内容必须填充当前数据,但也可以由用户更新.这组数据将绑定到表单; 发送到页面的数据将呈现,从页面(由用户)发送的数据将导致更新.示例:用户的姓名和地址; 目前的订单.

所有这些数据通常都存储在页面需要访问的一个或多个对象中.

包含信息数据的对象应放在referenceData()方法提供的地图中.您可以拥有尽可能多的此类对象.

要绑定到表单的数据(读/写数据)必须包含在单个对象中.该formBackingObject()方法应返回此对象.

我将在最新版本的Spring中添加注释,而不是使用这些"内置"方法.

  • 你可以使用`request.setAttribute`,当然.但是这与HTTPRequest对象紧密相关,所以我喜欢referenceData的想法,或者在`ModelAndView`对象上使用`addAttribute`(它最终等同于`request.setAttribute`但是更好的抽象). (2认同)