java web开发时防止刷新后的重复提交

来源:互联网 发布:mac桌面图标隐藏 编辑:程序博客网 时间:2024/05/17 09:20

         在java web开发过程中大家经常都会遇到页面刷新后重复提交导致数据库数据重复的情况出现。

         那么,如何避免重复提交数据的情况出现呢?如下代码,是在jsp中解决重复提交的一种方式。

  1. //此段代码用于防止刷新后的重复提交 
  2. //时间戳
  3. String timeStamp = String.valueOf(new java.util.Date().getTime());
  4. //创建新令牌值
  5. String tokenStr = session.getId()+timeStamp;
  6. //识别令牌,不合法将中止页面运行
  7. String sesValue = session.getValue("CONTROL_REFRESH").toString();
  8. String reqValue = request.getParameter("tokenStr");   
  9. if(!sesValue.equals(reqValue)){
  10.         out.print("不能重复提交数据!");
  11.         return;
  12. }      
  13. //更新令牌
  14. session.setAttribute("CONTROL_REFRESH",tokenStr);

将以上代码放到需要解决刷新后重复提交问题的jsp页面<%%>中即可。