From 8f7ed66544dd3b8d1521b8b5adc89ca1c6fc77c7 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: Sat, 18 Sep 2021 18:20:21 +0800
Subject: [PATCH] update 优化aop语法 使用spring自动注入注解 基于注解拦截的aop注解不可能为空
---
ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/RateLimiterAspect.java | 27 ++-------------------------
1 files changed, 2 insertions(+), 25 deletions(-)
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/RateLimiterAspect.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/RateLimiterAspect.java
index fd456b0..4187cee 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/RateLimiterAspect.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/RateLimiterAspect.java
@@ -49,16 +49,9 @@
this.limitScript = limitScript;
}
- // 配置织入点
- @Pointcut("@annotation(com.ruoyi.common.annotation.RateLimiter)")
- public void rateLimiterPointCut()
+ @Before("@annotation(rateLimiter)")
+ public void doBefore(JoinPoint point, RateLimiter rateLimiter) throws Throwable
{
- }
-
- @Before("rateLimiterPointCut()")
- public void doBefore(JoinPoint point) throws Throwable
- {
- RateLimiter rateLimiter = getAnnotationRateLimiter(point);
String key = rateLimiter.key();
int time = rateLimiter.time();
int count = rateLimiter.count();
@@ -82,22 +75,6 @@
{
throw new RuntimeException("服务器限流异常,请稍后再试");
}
- }
-
- /**
- * 是否存在注解,如果存在就获取
- */
- private RateLimiter getAnnotationRateLimiter(JoinPoint joinPoint)
- {
- Signature signature = joinPoint.getSignature();
- MethodSignature methodSignature = (MethodSignature) signature;
- Method method = methodSignature.getMethod();
-
- if (method != null)
- {
- return method.getAnnotation(RateLimiter.class);
- }
- return null;
}
public String getCombineKey(RateLimiter rateLimiter, JoinPoint point)
--
Gitblit v1.9.2