自定义注解打印入参出参和执行时间

很多时候我们都有打印入参出参和执行时间的需求,我们可以直接手写打印语句,但是这样子比较麻烦,低效.

我们可以写一个自定义注解,后续需要打印日志的时候直接加这个注解就可以了.

很显然,根据我们的需求,我们的自定义注解应该是加在方法上的,且运行时需要保留

 

 

 那么接下来我们要做的就是获得加了这个注解的方法,并对他们进行操作.

@Aspect 把当前类标识为一个切面供容器读取

相关注解:

@Pointcut:Pointcut是植入Advice的触发条件。每个Pointcut的定义包括2部分,一是表达式,二是方法签名。方法签名必须是 public及void型。可以将Pointcut中的方法看作是一个被Advice引用的助记符,因为表达式不直观,因此我们可以通过方法签名的方式为 此表达式命名。因此Pointcut中的方法只需要方法签名,而不需要在方法体内编写实际代码。
@Around:环绕增强,相当于MethodInterceptor
@AfterReturning:后置增强,相当于AfterReturningAdvice,方法正常退出时执行
@Before:标识一个前置增强方法,相当于BeforeAdvice的功能,相似功能的还有
@AfterThrowing:异常抛出增强,相当于ThrowsAdvice
@After: final增强,不管是抛出异常或者正常退出都会执行

ProceedingJoinPoint 这个类可以帮助我们获得当前运行的方法.

API百度一下就有了,我直接贴个图算了

 

 

posted @ 2019-09-06 13:51  天糊十三幺  阅读(1067)  评论(0编辑  收藏  举报