springboot 订单重复提交_spring boot 防止重复提交

本文介绍了如何在Spring Boot应用中防止订单重复提交。通过自定义注解`NoRepeatSubmit`,结合AOP切面处理,利用Guava Cache或Redis实现2秒内的重复请求拦截。在集群环境下,更新版本使用Redis来处理跨服务器的重复提交问题。
摘要由CSDN通过智能技术生成

服务器端实现方案:同一客户端在2秒内对同一URL的提交视为重复提交

上代码吧

pom.xml

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

com.example

springboot-repeat-submit

1.0

jar

org.springframework.boot

spring-boot-starter-parent

2.0.4.RELEASE

UTF-8

UTF-8

1.8

org.springframework.boot

spring-boot-starter-web

org.springframework.boot

spring-boot-starter-aop

com.google.guava

guava

24.0-jre

org.springframework.boot

spring-boot-maven-plugin

logback.xml

%d[%F:%L][%p]:%m%n

Application.java

package com;

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

/**

* @author www.gaozz.club

* @功能描述 防重复提交

* @date 2018-08-26

*/

@SpringBootApplication

public class Application {

public static void main(String[] args) {

SpringApplication.run(Application.class, args);

}

}

自定义注解NoRepeatSubmit.java

package com.common;

import java.lang.annotation.ElementType;

import java.lang.annotation.Retention;

import java.lang.annotation.RetentionPolicy;

import java.lang.annotation.Target;

@Target(ElementType.METHOD) // 作用到方法上

@Retention(RetentionPolicy.RUNTIME) // 运行时有效

/**

* @功能描述 防止重复提交标记注解

* @author www.gaozz.club

* @date 2018-08-26

*/

public @interface NoRepeatSubmi

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值