首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

基于SpringBoo防止接口重复提交代码示例

后端 25.16KB 24 需要积分: 1
立即下载

资源介绍:

基于SpringBoo防止接口重复提交代码示例
package com.example.demo2; import com.google.common.cache.Cache; import com.google.common.cache.CacheBuilder; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Pointcut; import org.aspectj.lang.reflect.MethodSignature; import org.springframework.stereotype.Component; import java.lang.reflect.Method; import java.util.concurrent.TimeUnit; @Aspect @Component public class LockAspect { public static final Cache CACHES = CacheBuilder.newBuilder() .maximumSize(50) .expireAfterWrite(5, TimeUnit.SECONDS) .build(); @Pointcut("@annotation(com.example.demo2.LockCommit)&&execution(* com.example.demo2.*.*(..))") public void pointCut(){} @Around("pointCut()") public Object Lock(ProceedingJoinPoint joinPoint){ MethodSignature methodSignature = (MethodSignature) joinPoint.getSignature(); Method method = methodSignature.getMethod(); LockCommit lockCommit = method.getAnnotation(LockCommit.class); String key = lockCommit.key(); if(key!=null &&!"".equals(key)){ if(CACHES.getIfPresent(key)!=null){ throw new RuntimeException("请勿重复提交"); } CACHES.put(key,key); } Object object = null; try { object = joinPoint.proceed(); } catch (Throwable e) { e.printStackTrace(); } return object; } }

资源文件列表:

demo2.zip 大约有56个文件
  1. demo2/
  2. demo2/.gitignore 395B
  3. demo2/.idea/
  4. demo2/.idea/.gitignore 190B
  5. demo2/.idea/compiler.xml 715B
  6. demo2/.idea/encodings.xml 191B
  7. demo2/.idea/jarRepositories.xml 864B
  8. demo2/.idea/misc.xml 539B
  9. demo2/.idea/workspace.xml 3.72KB
  10. demo2/.mvn/
  11. demo2/.mvn/wrapper/
  12. demo2/.mvn/wrapper/maven-wrapper.properties 952B
  13. demo2/HELP.md 1.27KB
  14. demo2/mvnw 10.42KB
  15. demo2/mvnw.cmd 6.75KB
  16. demo2/pom.xml 2.57KB
  17. demo2/src/
  18. demo2/src/main/
  19. demo2/src/main/java/
  20. demo2/src/main/java/com/
  21. demo2/src/main/java/com/example/
  22. demo2/src/main/java/com/example/demo2/
  23. demo2/src/main/java/com/example/demo2/Demo2Application.java 320B
  24. demo2/src/main/java/com/example/demo2/GlobalExceptionHandler.java 359B
  25. demo2/src/main/java/com/example/demo2/LockAspect.java 1.56KB
  26. demo2/src/main/java/com/example/demo2/LockCommit.java 226B
  27. demo2/src/main/java/com/example/demo2/StudentController.java 375B
  28. demo2/src/main/resources/
  29. demo2/src/main/resources/application.properties 30B
  30. demo2/src/main/resources/static/
  31. demo2/src/main/resources/templates/
  32. demo2/src/test/
  33. demo2/src/test/java/
  34. demo2/src/test/java/com/
  35. demo2/src/test/java/com/example/
  36. demo2/src/test/java/com/example/demo2/
  37. demo2/src/test/java/com/example/demo2/Demo2ApplicationTests.java 217B
  38. demo2/target/
  39. demo2/target/classes/
  40. demo2/target/classes/application.properties 30B
  41. demo2/target/classes/com/
  42. demo2/target/classes/com/example/
  43. demo2/target/classes/com/example/demo2/
  44. demo2/target/classes/com/example/demo2/Demo2Application.class 738B
  45. demo2/target/classes/com/example/demo2/GlobalExceptionHandler.class 783B
  46. demo2/target/classes/com/example/demo2/LockAspect.class 2.88KB
  47. demo2/target/classes/com/example/demo2/LockCommit.class 539B
  48. demo2/target/classes/com/example/demo2/StudentController.class 697B
  49. demo2/target/generated-sources/
  50. demo2/target/generated-sources/annotations/
  51. demo2/target/maven-status/
  52. demo2/target/maven-status/maven-compiler-plugin/
  53. demo2/target/maven-status/maven-compiler-plugin/compile/
  54. demo2/target/maven-status/maven-compiler-plugin/compile/default-compile/
  55. demo2/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
  56. demo2/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst 226B
0评论
提交 加载更多评论
其他资源 基于SpringBoo防止接口重复提交代码示例(分布式示例)
基于SpringBoo防止接口重复提交代码示例(分布式示例),原文链接:如何防止重复提交:https://blog.csdn.net/qq_61024956/article/details/139116838
maven安装包3-6,1
maven安装包3-6,1
(通用链接)微信支付SDK2.0.4
(通用链接)微信支付SDK2.0.4
P70PRO执法仪升级包(完整版)
20240621-AEE固件_V1.2(线上版、有4G、有GPS)
uniapp项目源码由咸虾米课程,可以用来开源自用共享
uniapp项目,点个关注后下载谢谢
lnux netwkdfjklajdfklja lkjsldkfjasl kjfl sfakjlksdafjlsk
lnux netwkdfjklajdfklja lkjsldkfjasl kjfl sfakjlksdafjlsk
TB4117海康威视摄像头软件代码
很多人用TB4117改手持摄像头,也有产品设计用来做防疫产品的。
QT自定义无边框窗口(移动控制和窗口大小调整)
本示例介绍了如何使用Qt框架创建一个无边框窗口,并提供了详细的源码,包括窗口样式设置、移动区域控制和窗口大小调整功能。用于设置窗口为无边框窗口。可为窗口添加自定义标题栏、边框和系统菜单按钮。