基于自定义注解控制AOP切入点

此篇博客主要记录基于注解形式的Aop切面,作为自己工作中的一个记录

第一步:导入spring以及支持aop的关联jar

基于自定义注解控制AOP切入点

第二步:在spring的xml中开启注解功能

基于自定义注解控制AOP切入点

第三部:进行自定义注解的编写

基于自定义注解控制AOP切入点

第四步:编写一个切面

基于自定义注解控制AOP切入点

其中执行通知的方法参数为自定义注解,实现切入点为value ="aspect() && @annotation(timer)",实际是

@Pointcut("execution(* com.aop.tets.a..*(..)) ")和自动以注解的组合,为什么这么写呢?因为自定义注解可能与jar包中的原生注解重名产生冲突,这样写可以理解为一种组合切入点。

第五步:编写一个测试类:

基于自定义注解控制AOP切入点

执行此方法:

基于自定义注解控制AOP切入点

 

执行结果:

基于自定义注解控制AOP切入点

总结:使用自定义注解来控制切入点,切入比较灵活,在实际业务中可以用来指定记录哪些方法需要执行切入通知内的业务代码,例如可以记录指定方法的执行日志,也可以进行进行指定方法的权限拦截等操作。很简单的小功能。