注解+AOP改良项目中的监控
文章目录
一、需求与思考
背景:前一阵因为需求变更,在一些方法上添加了统一监控的代码,基本上是采用try/catch/finally在不影响原有代码逻辑的情况下添加,其结果就是项目中出现了大量的重复代码。
思考:重复代码向来是优化工作中需要尽可能干掉的部分,此外想到今后还有可能对其他方法加/去监控,再写try/catch显得很不灵活,所以得想办法改善这一情况。
方法:想到使用注解。注解的增删极其简单方便,然而之前并没有真正使用过自定义注解,在学习时也只是写过取注解中属性和反射相关的小demo,想要实现改良,需要将注解结合AOP动态代理使用。
二、实际操作
定义注解
- 定义一个名为@AddUMP的注解
|
|
配置切点
- 切点限定(execution表达式)
- 在原有逻辑前后加上异常检测
- ProceedingJoinPoint调用proceed方法执行
|
|
给方法添加注解
- 在所需要添加切面的方法上标记@AddUMP即可