转载 jsp 表单防止重复提交(简单版)

本文介绍了一种通过生成随机flag并存储在session中来防止表单重复提交的方法。该方法在用户提交表单前将随机生成的flag作为隐藏字段加入到表单中,并在后端验证提交的flag是否与session中保存的一致。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文地址 [url]http://wanchong958.iteye.com/blog/233791[/url]

// 页面代码start
<%
Random random = new Random();
//生成随机flag,
Integer flag=new Integer(random.nextInt());
session.setAttribute("flag",flag);
%>

//form代码
<input type=hidden name="flag" value="<%=flag%>">

//页面代码end


//处理表单代码 start
Integer flag =new Integer(Integer.parseInt(request.getParameter("flag")));
HttpSession session=request.getSession();
if (flag.equals(session.getAttribute("flag"))){
//在此调用dao
destroyFlag(session);
} else {
System.out.println("重复提交");
}

/**
* 销毁flag
* @param session
*/
public void destroyFlag(HttpSession session) {
session.removeAttribute("flag");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值