利用Session防止表单重复提交问题

来源:互联网 发布:阿里云 专用网络 ftp 编辑:程序博客网 时间:2024/06/06 10:04
问题:
 同一个用户打开同一个浏览器进程的多个窗口来并发访问同一个WEB站点的多个FORM表单页面时,将会出现表单无法正常提交的情况。
解决方案:
将FORM表单的标识号作为表单隐藏字段的名称,如下所示:
 <input type='hidden' name='4b15c6b2f573831b4b5107d849fcafb8' value=''>
将所有的表单标识号存储进一个Vector集合对象中,并将Vector集合对象存储进Session域中。当表单提交时,先从Session域中取出Vector集合对象,然后再从Vector集合对象中逐一取出每个表单标识号作为参数调用HttpServletRequest.getParameter方法,如果其中有一次调用的返回值不为null,则接受并处理该表单数据,处理完后将该表单标识号从Vector集合对象中删除。
原创粉丝点击