防止重复调用

前段防重

在前段设置状态在响应时进入遮罩层或给按钮一个状态

后端防重

复制代码
   //获取setNX锁
        if (redisTemplate.opsForValue().setIfAbsent("lock", orderId)) {
            //获取锁成功
            try {
                //Redission 获取锁
                RLock lock = redissonClient.getLock("lock");
                boolean acquired = lock.tryLock(10, TimeUnit.SECONDS); // 尝试获取锁,最多等待10秒
                if (acquired) {
                    try {
                        // 执行业务逻辑

                    } finally {
                        lock.unlock(); // 记得解锁
                    }
                }
            } catch (InterruptedException e) {
                throw new RuntimeException(e);
            } finally {
                //删除锁
                redisTemplate.delete("lock");
            }
        }
相关推荐
软件技术NINI几秒前
传统文化html+css 5页
前端·css·html
优秀稳妥的JiaJi2 分钟前
从产品原型到前端开发的需求清单,从1小时到25分钟
前端·trae
manongdashu1886 分钟前
应对“SEO需要支付一年服务费”的捆绑消费,静态建站配套终身低成本服务器,全程无需额外运维开销。的方法。
运维·服务器·前端·seo·静态网站
风骏时光牛马10 分钟前
AI提示词有效性深度测试
前端
Su米苏11 分钟前
针对使用@vue-office 出现的包异常找不到问题
前端·javascript·vue.js
坚定信念,勇往无前14 分钟前
electron打包mac ,apple m4出错:ffprobe是x86,不是arm64
前端·javascript·electron
我叫张土豆19 分钟前
在 OpenClaw Java 对话框输入一句话后,系统是如何运行的?
java·开发语言·人工智能
liangbo727 分钟前
JVM规范第 4 章:class 文件格式
java·jvm
橘子汽水16827 分钟前
Leetcode 236,437:二叉树的最近公共祖先,路径总和III
java·数据结构
专业抄代码选手30 分钟前
01|从手写 DOM 到虚拟 DOM:把 UI 从“操作”变成“描述”
前端·javascript·react.js