通过在指定的接口处添加注解,实现根据指定的接口参数来防重复点击
说明#
=======
这里的重复点击是指在指定的时间段内多次点击按钮
技术方案#
=========
springboot + redis锁 + 注解
使用 feign client 进行请求测试

最终的使用实例#
============
1、根据接口收到 PathVariable 参数判断唯一
Copy/**
-
根据请求参数里的 PathVariable 里获取的变量进行接口级别防重复点击
-
@param testId 测试id
-
@param requestVo 请求参数
-
@return
-
@author daleyzou
*/
@PostMapping(“/test/{testId}”)
@NoRepeatSubmit(location = “thisIsTestLocation”, seconds = 6)
public RsVo thisIsTestLocation(@PathVariable Integer testId, @RequestBody RequestVo requestVo) throws Throwable {
// 睡眠 5 秒,模拟业务逻辑
Thread.sleep(5);
return RsVo.success(“test is return success”);
}
2、根据接口收到的 RequestBody 中指定变量名的值判断为一
Copy/**
-
根据请求参数里的 RequestBody 里获取指定名称的变量param5的值进行接口级别防重复点击
-
@param testId 测试id
-
@param requestVo 请求参数
-
@return
-
@author daleyzou
*/
@PostMapp

本文介绍了一种使用Springboot结合Redis锁和注解的方式,防止在指定时间段内的重复点击。通过自定义注解`@NoRepeatSubmit`,结合Feign Client进行请求测试,确保同一接口在设定时间内不会被多次执行。示例代码展示了如何根据PathVariable和RequestBody中的特定变量值进行重复提交的判断。
,Java笔试常见编程题&spm=1001.2101.3001.5002&articleId=136958435&d=1&t=3&u=03975750d24f496a9dc101fe69acef7f)
1117

被折叠的 条评论
为什么被折叠?



