class A{
public void method(Long param){}
}
通过动态代理,为A创建一个代理,这个时候,有没有办法让代理的method方法的参数param添加注解@B。
还是说只能获取参数是否有注解,而不能添加注解。
class A{
public void method(Long param){}
}
通过动态代理,为A创建一个代理,这个时候,有没有办法让代理的method方法的参数param添加注解@B。
还是说只能获取参数是否有注解,而不能添加注解。
你这里说的动态代理只是针对这个技术而言还是说在spring项目下的动态代理,这里只是针对JDK动态代理的话实现java.lang.reflect.InvocationHandler
,
是可以拿到Method对象的,既然方法对象拿到了参数和参数上的注解都是能获取到的,getParameterAnnotations
如果是spring代理的话,这里他已经给你做了代理,你要是使用@Aspect实现切面功能的话,这里你可以试试:((MethodInvocationProceedingJoinPoint.MethodSignatureImpl)point.getSignature()).getMethod()
这么去拿method对象,
这里的point就是你代理方法的ProceedingJoinPoint point