我在控制器之间传输对象(作为modelAttribute
)及其值的形式存在问题。我有一个modelAttribute
的表单,比如"myObject"
,其中有一些成员。我在第一个控制器中为模型添加了modelAttribute "myObject"
。
我能够在视图中读取和显示"myObject"
值的值,例如,我可以通过${myObject.memberName}
获取值,但是当涉及到作为参数的第二个控制器时object(我的意思是:modelAttribute("myObject")
MyObject myObject
)成员被设置为默认值,主要是null!
在表单中设置了一些值(它们工作正常),其余的值在第一个控制器中设置。我想在第二个控制器中设置值,但它们会丢失。
我应该如何传输modelAttribute
对象的值,以免在控制器之间丢失它们?我应该将它们放在HttpRequest
paratemers中吗?
答案 0 :(得分:0)
HTTP是无状态协议。因此,您可以预期参数不会在请求之间徘徊。
我应该将它们放在HttpRequest paratemers中吗?
是的,如果您希望控制器可以使用这些值来处理下一个请求,您需要将这些值作为请求的一部分传递/将它们发布到某些表单数据中。
如果您希望数据可用于许多请求,您可以考虑将模型放入HttpSession。