java代码防止重复提交 java代码防止重复提交的方法

vuejava防止重复创建订单

vuejava防止重复创建订单的步骤:

主要从事网页设计、PC网站建设(电脑版网站建设)、wap网站建设(手机版网站建设)、响应式网站开发、程序开发、微网站、微信小程序定制开发等,凭借多年来在互联网的打拼,我们在互联网网站建设行业积累了丰富的成都网站建设、成都做网站、网络营销经验,集策划、开发、设计、营销、管理等多方位专业化运作于一体,具备承接不同规模与类型的建设项目的能力。

1、创建订单时,用订单信息计算一个哈希值。

2、判断redis中是否有key,有则不允许重复提交。

3、没有则生成一个新key,放到redis中设置个过期时间即可。

在java中怎么防止页面重复提交

1.新建两个文件

index.jsp -- 表单页面

success.jsp -- 结果提示页面

2

2.代码分别如下:

3

3.新建TokenServlet,代码如下

4

4.运行index.jsp,输入用户名,点击提交

5

5.正常跳转结果页面

6

6.但当我在这个页面点击刷新的时候,出现如下提示

7

7.点击重试,发现又一次调用了servlet,这就是一个重复提交

8

8.多刷新几次,注意看URL地址,现在仍然是servlet

9

9.以前说重定向可以解决表单重复提交的问题,我们修改Servlet代码如下

10.再次测试,发现重定向到了success.jsp ,再点击刷新的话也不会出现重复提交了

11.那问题解决了么?再看,当我点击浏览器中的返回,然后再点击提交,如此反复,仍然在重复调用Servlet,这也是重复提交

12.现在修改Index.jsp

13.修改servlet代码

14.新建token文件,代码如下

15.在浏览器中测试(注,这里如果再使用Eclipse自带浏览器的话,会出现缓存问题,所以使用正常的浏览器火狐或者IE)

16.hidden中的token 和session中的token是相同的

17.当点击浏览器中的后退按钮,再次进行操作,发现不能重复提交

18.这是因为session中的token已经被移除掉了

19.而返回后刷新页面,相当于新开一个index.jsp 重新获取token 赋值给session,这时可以正常提交了

java如何实现你提交太频繁了

可以使用前、后端分别拦截的方式。

前端拦截是指通过 HTML 页面来拦截重复请求,比如在用户点击完“提交”按钮后,我们可以把按钮设置为不可用或者隐藏状态。但前端拦截有一个致命的问题,如果是懂行的程序员或非法用户可以直接绕过前端页面,通过模拟请求来重复提交请求,比如充值了100元,重复提交了10次变成了1000元。所以除了前端拦截一部分正常的误操作之外,后端的拦截也是必不可少。后端拦截的实现思路是在方法执行之前,先判断此业务是否已经执行过,如果执行过则不再执行,否则就正常执行,将请求的业务 ID 存储在内存中,并且通过添加互斥锁来保证多线程下的程序执行安全。

java后台接口 怎么防止重复提交

防止重复提交的方法很多,例如:

1、Meta法

在你的表单页里HEAD区加入这段代码:

META HTTP-EQUIV="pragma" CONTENT="no-cache"

META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"

META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT"

2、令牌法

生成一个令牌保存在用户session中,在form中加一个hidden域,显示该令牌的值,form提交后重新生成一个新的令牌,将用户提交的令牌和session中的令牌比较,如不同则为重复提交。

3、禁用按钮法

input type="button" value="提交" onclick="this.disabled=true;this.form.submit()"

4、struts配置法

修改struts-config.xml文件,在action里面有一个redirect重新定向的属性,struts中默认的是false,添加这个属性,改成true,在forword中写上要跳转页面的绝对或者相对地址就行了

修改如下:

action-mappings

action attribute="newsActionForm" name="newsActionForm" input="/addnews.jsp" path="/newsAction" parameter="method" scope="request" type="com.yongtree.news.action.NewsAction"

forward name="list" path="/listnews.jsp" redirect="true"/forward

forward name="error" path="/addnews.jsp"/forward

/action

/action-mappings


名称栏目:java代码防止重复提交 java代码防止重复提交的方法
路径分享:http://cdiso.cn/article/dodepji.html

其他资讯