使用 JSP 中的表单值更新 Struts 操作中的对象
我有一个 struts2 操作,它构建一个表单并使用对象实例中的数据预填充字段。当我单击此表单上的“提交”时,我会执行第二个操作,即 formSubmit 操作。在这里,我希望使用表单中的任何新值来更新该对象。有没有一种简单的方法可以在 struts2 中的第二个操作中访问同一个对象?
如果可能的话,我想将我的对象保留在请求范围内,而不是会话中。
I have a struts2 action that builds a form and pre-populates the fields with data from an instance of my object. When I click submit on this form, I get taken to a second action, my formSubmit action. Here I'd like the object to be updated with any new values from the form. Is there an easy way to access this same object in my second action in struts2?
I'd like to, if at all possible, keep my object in request scope, rather than session.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
嗯,这是不可能的。想一想:当请求开始(用户单击按钮)时,“请求范围”就诞生了,当请求(显然是同一个请求)结束(当数据发送到浏览器时)时,“请求范围”就消失了。您希望将对象保留在长期存在的范围内(可能是会话)。或者,如果数据来自数据库,则在两个请求中再次加载它(如果担心并发更改,可能使用一些乐观锁定)。这些是典型的做法。
Well, it is not possible. Think of it: a "request scope" is born when the request starts (the user clicks a button) and dies when the request (the same request, obviously) ends (when the data is sent to the browser). You want to keep an object in a longer-lived scope (probably the session). Or, if the data comes from a DB, load it again in both requests (using perhaps some optimistic locking if are concerned about concurrent changes). These are the typical ways of doing it.