技术交流QQ群【JAVA,C++,Python,.NET,BigData,AI】:170933152
这里用注解+redis的方式来防止表单提交
先声明注解:
package cn.gov.credream.sctest.annotation;
import java.lang.annotation.*;
/**
* 防止表单重复提交注解,后台在需要防止重复提交的接口方法上增加此注解,前台通过在header里面携带form-post-id来防重复提交
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@Inherited
@Documented
public @interface FormCommit {
String value() default "form-post-id";
}
后台对对应的,加了注解的,controller进行拦截器拦截:
package cn.gov.credream.sctest.filter;
import cn.gov.credream.sctest.core.ServiceException;
import cn.gov.credream.sctest.util.RedisLockUtil;