【AOP】在Aspect中无法获取实现类方法的注解

问题

MethodSignature methodSignature = (MethodSignature) (joinPoint.getSignature());
Method method = methodSignature.getMethod();

CustomLog log = method.getAnnotation(CustomLog.class);

 

如果在实现类上进行注解,则 log 为null

 

解决方法

MethodSignature methodSignature = (MethodSignature) (joinPoint.getSignature());
//Method method = methodSignature.getMethod();
Method method = joinPoint.getTarget().getClass().getDeclaredMethod(methodSignature.getName(), methodSignature.getMethod().getParameterTypes());

CustomLog log = method.getAnnotation(CustomLog.class);

 

posted @ 2019-04-17 15:34  rubekid  阅读(1694)  评论(0编辑  收藏  举报