2 ericjrf ericjrf 于 2017.01.05 10:56 提问

spring防止重复提交问题

http://blog.csdn.net/JDinis/article/details/51567536
参考的是这一篇,但是有个问题。

我是在jsp中做的form表单,比如我连续点击两次提交后。
第一次提交是验证通过的,第二次提交会被拦截。
因为第二次提交被拦截,导致第一次的提交功能虽然完成,但是页面并没有转跳。
我该怎么弄才能让第一次提交成功并使页面转跳。

3个回答

Royal_lr
Royal_lr   Ds   Rxr 2017.01.05 11:37

可以在前端提交后,将按钮变为禁用就行了,,

ericjrf
ericjrf 如果初步实现的话这样应该可以
一年多之前 回复
Albertxu1
Albertxu1   2017.01.05 12:21

你可以试试用Ajax做表单校验,提交前再校验一次,成功后设置立即跳转就可以了,这样你就没有第二次提交的机会了

ericjrf
ericjrf 如果是ajax我知道怎么做,问题就是这个上我该怎么处理。因为这个整体都是用的jsp来写的。
一年多之前 回复
JE_GE
JE_GE   2017.01.07 16:18
ericjrf
ericjrf 这个提交一个字符串和我拿一个对象去接差别不大,我主要是需要防止重复提交,目前是用的一楼禁用按钮的方法
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Spring MVC防止数据重复提交(防止二次提交)
SpringMvc使用Token 使用token的逻辑是,给所有的url加一个拦截器,在拦截器里面用java的UUID生成一个随机的UUID并把这个UUID放到session里面,然后在浏览器做数据提交的时候将此UUID提交到服务器。服务器在接收到此UUID后,检查一下该UUID是否已经被提交,如果已经被提交,则不让逻辑继续执行下去…首先要定义一个annotation:@Target(Elemen
SpringMVC避免表单的重复提交解决办法
SpringMVC避免表单的重复提交解决办法-------使用重定向redirect      在实际的项目中,比如我们要更改一个学生的信息,则我们会使用提交form表单的方式,来进行修改。可是这样有一个弊端:我们仍然停留在当前的页面,并且表单里面还有刚才提交的学生的信息,有可能会发生表单重复提交的现象。    解决办法:      /**      * 根据学生的主键删除此条学生
SpringBoot防止重复请求,重复表单提交超级简单的注解实现之三(升级版1)
1. 注解接口  /** * @description 防止表单重复提交注解 */ @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.METHOD) @Documented public @interface DuplicateSubmitToken { //保存重复提交标记 默认为需要保存 boolean sav...
Spring mvc防止数据重复提交
方法分析:这里使用的防止数据重复提交的方法是使用token,给所有的url加一个拦截器,在拦截器里面用java的UUID生成一个随机的UUID并把这个UUID放到session里面,然后在浏览器做数据提交的时候将此UUID提交到服务器。服务器在接收到此UUID后,检查一下该UUID是否已经被提交,如果已经被提交,则不让逻辑继续执行下去。源码实现:注解Token代码:@Target(ElementTy
spring boot 学习(七)小工具篇:表单重复提交
学习 Spring Boot 中,我想将我在项目中添加几个我在 SpringMVC 框架中常用的工具类(主要都是涉及到 Spring AOP 部分知识)。接下来的时间,我尝试将这些框架整合到 Spring Boot 中(**尽可能完成**),毕竟项目开发中这些工具是非常有用的。
token-springMVC 防止重复提交
token-springMVC 防止重复提交
spring mvc 防止重复提交表单的两种方法,推荐第二种
好的,下面来讲一下如何在Spring MVC里面解决此问题(其它框架也一样,逻辑一样,思想一样,和具体框架没什么关系)。要解决重复提交,有很多办法,比如说在提交完成后redirect一下,也可以用本文提到的使用token的方法(我不使用redirect是因为那样解决不了ajax提交数据或者移动应用提交数据,另一个原因是现在比较通行的方法是使用token,像python里的django框架也是使用t
SpringBoot防止重复请求,重复表单提交超级简单的注解实现之三(升级版2)
升级拦截器/** * @description 防止表单重复提交拦截器 */ @Aspect @Component @Slf4j public class DuplicateSubmitAspect { public static final String DUPLICATE_TOKEN_KEY="duplicate_token_key"; @Pointcut("execu...
SpringMVC 表单防止重复提交(Ajax提交方式)
SpringMVC 中如果使用了knockoutJs前端开发框架,在表单提交的时候只需要把ViewModel中的数据以Ajax提交的方式提交到后台进行处理,这时候我们需要在前端做防止重复提交。这种防止重复提交只能防止在页面未刷新立即进行的提交,虽然不能够解决防止重复提交的所有情形,但是结合后端验证,还是可以解决一部分问题。        后端防止重复提交的做法是查询该表单中必填数据是否已在数据库
SpringBoot防止重复请求,重复表单提交超级简单的注解实现之四(终极版)
/** * @description 防止表单重复提交注解 */ @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.METHOD) @Documented public @interface DuplicateSubmitToken { /**一次请求完成之前防止重复提交*/ public static final ...