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

标签: java web 开发 | 发表时间:2014-01-14 23:26 | 作者:
出处:http://www.iteye.com

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

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

 

//此段代码用于防止刷新后的重复提交 
//时间戳
String timeStamp = String.valueOf(new java.util.Date().getTime());
//创建新令牌值    http://ini.iteye.com
String tokenStr = session.getId()+timeStamp;
//识别令牌,不合法将中止页面运行
String sesValue = session.getValue("CONTROL_REFRESH").toString();
String reqValue = request.getParameter("tokenStr");   
if(!sesValue.equals(reqValue)){
        out.print("不能重复提交数据!");
        return;
}      
//更新令牌
session.setAttribute("CONTROL_REFRESH",tokenStr);

 

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



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [java web 开发] 推荐:

java web开发 高并发处理

- - 企业架构 - ITeye博客
java web开发 高并发处理. java处理高并发高负载类网站中数据库的设计方法(java教程,java处理大量数据,java高负载数据). 一:高并发高负载类网站关注点之数据库. 没错,首先是数据库,这是大多数应用所面临的首个SPOF. 尤其是Web2.0的应用,数据库的响应是首先要解决的. 一般来说MySQL是最常用的,可能最初是一个mysql主机,当数据增加到100万以上,那么,MySQL的效能急剧下降.

Java 开发 2.0: 使用 Gretty 的超轻量级 Java Web 服务

- 圣斌 - IBM developerWorks 中国 : 文档库
Gretty 是构建 Web 服务超轻量级框架的新学派之一. 构建于极快的 Java NIO API 之上,Gretty 将 Groovy 用作 Web 端点和 Grape 的 Maven 式依赖关系管理的一种域特定语言. 本文介绍如何开始使用 Gretty 来构建和部署 Java Web 服务应用程序.

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

- - ITeye博客
在java web开发过程中大家经常都会遇到页面刷新后重复提交导致数据库数据重复的情况出现. 那么,如何避免重复提交数据的情况出现呢. 如下代码,是在jsp中解决重复提交的一种方式. //此段代码用于防止刷新后的重复提交 //时间戳 String timeStamp = String.valueOf(new java.util.Date().getTime()); //创建新令牌值.

xssProject在java web项目中应用

- - Java - 编程语言 - ITeye博客
1.项目引入xssProtect-0.1.jar、antlr-3.0.1.jar、antlr-runtime-3.0.1.jar包. * 覆盖getParameter方法,将参数名和参数值都做xss过滤. * 如果需要获得原始的值,则通过super.getParameterValues(name)来获取
.

关于Java Web打印的选择

- - JavaScript - Web前端 - ITeye博客
 最近遇到一个项目,需要用到较为复杂的打印功能,包括批量打印等. 目前来说,一般一个简单的详情页面打印,直接调用window.print就行了;. 但遇到复杂的时候,我们可能会想到用集成好的控件来解决,当然,如果你有时间又不怕麻烦,你也可以自己写一堆js. 这里,我就先抛砖引玉对两个比较常用的打印控件谈谈自己的看法.

Java Web 服务性能优化实践

- - 博客 - 伯乐在线
来源: IBM developerworks. 简介: 本文介绍如何提升 Java Web 服务性能,主要介绍了三种方法:一是采用 Web 服务的异步调用,二是引入 Web 服务批处理模式,三是压缩 SOAP 消息. 重点介绍在编程过程中如何使用异步 Web 服务以及异步调用和同步调用的差异点. 本文还示范了如何在项目中使用以上三种方法,以及各种方法所适合的应用场景.

使用Gradle构建Java Web应用(译)

- - BlogJava-首页技术区
使用Gradle构建Java Web应用. 本文是发布在 java.net上的一篇摘自于一书中的 节选,介绍了使用 Gradle构建Java Web应用的过程. 刚刚接触Gradle,看到了这篇小文,随手译了出来:-) (2014.01.23最后更新). 在职业生涯和私人生活中,我们中间的许多人要同时管理多个项目.

[Java Web]敏感词过滤算法

- - CSDN博客推荐文章
DFA算法的原理可以参考 这里,简单来说就是通过Map构造出一颗敏感词树,树的每一条由根节点到叶子节点的路径构成一个敏感词,例如下图:. LOG.error("sensitiveWordMap 未初始化!");. LOG.error("敏感词库文件转码失败!");. LOG.error("敏感词库文件不存在!");.

Java Web应用Web层异步化应该考虑的问题

- - 企业架构 - ITeye博客
        之前做了一个项目,要用到web层的异步化技术,在实际实现中,遇到了很多问题,作为教训简单罗列下. 1、app 容器/J2EE框架对异步的支持.         在tomcat5、jboss4的时候,每一个请求都用了一个app容器线程来执行,app线程必须一直处理完或者等待别的线程处理完,才能拿着请求的链接把结果写回到客户端.

Web开发入门(转载)

- linchanx - Starming星光社最新更新
Web应用的竞争异常激烈,开发难度也是入门容易做好很难,所以第一次开发的应用不成功是很正常的事情. 不过这正是一个积累的过程,反正你需要的只是电脑和少量服务器经费,所以多磨练几次,水平自然会提高. 2, 习惯阅读及查阅英文资料. 前沿信息基本源自美国,翻译的东西不及时,不全,很多水平不高,再加之中文原创资料毕竟很有限,因此是否能熟练地查阅英文资料决定了你获取信息的 及时性和质量.