struts中如何解决重复提交问题
2013-11-17
展开全部
Struts 的 Token 机制可以解决这个问题。
1. 防止通过超链接重复访问 Struts Action 。
如果我们要防止 A 的默认页面 J 中指向 K 的超链接重复提交数据,按照下列步骤即可:
a. 如果 J 是从 Struts Action 转发而来,我们要在该 Struts Action 的 execute 方法中添加下面的一行:
saveToken(request);
b. 如果 J 不是从 Struts Action 转发而来,那么新建一个 Struts Action ,在该 Struts Action 的 excute 方法中增加上面的一行,然后再从该 action 转到 J 页面。
c. 在 J 页面中使用 Struts 标签生成指向 K 的超链接,如:
<html:link action="/deleteLayoutAction?layoutId=0" transaction="true" >delete</html:link>
注意红色字体部分。
d. 在 <html:link> 标签指向的 action 的 excute 方法中加入下面的代码:
if (!isTokenValid(request)) {
return mapping.findForward(" 这种情况下就是重复提交,转到相应的页面 ");
}
e . All Done.
2. 防止通过表单重复提交数据。
a. 如果 J 是从 Struts Action 转发而来,我们要在该 Struts Action 的 execute 方法中添加下面的一行:
saveToken(request);
b. 如果 J 不是从 Struts Action 转发而来,那么新建一个 Struts Action ,在该 Struts Action 的 excute 方法中增加上面的一行,然后再从该 action 转到 J 页面。
c. 在 J 页面中表单 Action 属性指向的 Struts action 的 excute 方法中加入下面的代码:
if (!isTokenValid(request)) {
saveToken(request);
return mapping.findForward(" 这种情况下就是重复提交,转到相应的页面 ");
saveToken(request);
}
1. 防止通过超链接重复访问 Struts Action 。
如果我们要防止 A 的默认页面 J 中指向 K 的超链接重复提交数据,按照下列步骤即可:
a. 如果 J 是从 Struts Action 转发而来,我们要在该 Struts Action 的 execute 方法中添加下面的一行:
saveToken(request);
b. 如果 J 不是从 Struts Action 转发而来,那么新建一个 Struts Action ,在该 Struts Action 的 excute 方法中增加上面的一行,然后再从该 action 转到 J 页面。
c. 在 J 页面中使用 Struts 标签生成指向 K 的超链接,如:
<html:link action="/deleteLayoutAction?layoutId=0" transaction="true" >delete</html:link>
注意红色字体部分。
d. 在 <html:link> 标签指向的 action 的 excute 方法中加入下面的代码:
if (!isTokenValid(request)) {
return mapping.findForward(" 这种情况下就是重复提交,转到相应的页面 ");
}
e . All Done.
2. 防止通过表单重复提交数据。
a. 如果 J 是从 Struts Action 转发而来,我们要在该 Struts Action 的 execute 方法中添加下面的一行:
saveToken(request);
b. 如果 J 不是从 Struts Action 转发而来,那么新建一个 Struts Action ,在该 Struts Action 的 excute 方法中增加上面的一行,然后再从该 action 转到 J 页面。
c. 在 J 页面中表单 Action 属性指向的 Struts action 的 excute 方法中加入下面的代码:
if (!isTokenValid(request)) {
saveToken(request);
return mapping.findForward(" 这种情况下就是重复提交,转到相应的页面 ");
saveToken(request);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询