SpringAOP给方法添加操作日志

2025-05-15 19:23:06

1、我们咸犴孜稍先介绍一种使用自定义注解的方法进行日志记录。首先我们创建一个日志注解LogAnnotation,创建时选中Annotation,如下图所示。需要依赖的jar包如下,本文使用的是SpringBoot框架。<dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjrt</artifactId> <version>1.8.10</version></dependency><dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjtools</artifactId> <version>1.8.10</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>5.0.0.RELEASE</version></dependency>

SpringAOP给方法添加操作日志

3、接下来定义切面类,Spring支持AspectJ的注解式编程,其中@Aspect声明是一个切面,@Afterq前置增强、@Before后置寿喋馒揎增强、@Around环绕增强,可直接将拦截规则切点作为参数。拦截规则为切点PointCut,,可以使用@PointCut专门定义拦截规则,如下图所示,我们使用@Before前置通知,切点使用@annotation注解。在类上我们使用@AspectJ注解和@Component注解(将该类交给Spring管理)。

SpringAOP给方法添加操作日志

5、当执行方法发生异常时我们也可以记录到日志,此时使用@AfterThrowing注解,当方法执行产生异常时会走到这个异常拦截,我们可以将错误信息记录到log日志或者数据库等。

SpringAOP给方法添加操作日志

7、接下来我们看一下如何在方法上加上日志的AOP拦截吧,我们只需要在满足PointCut规则的方法上使用自定义注解@LogAnnotation,并配置3个属性的值即可。这样在执行方法后就会走到@After,发生异常时会走到@AfterThrowing中去记录日志。

SpringAOP给方法添加操作日志
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢