Spring boot 使用AOP记录controller日志

希望在controller执行完成后,记录一下这个接口的调用信息
如下实现请求到如下接口后,会执行SubscribeAop.java中的 recordLog()方法
如果要实现在进入Controller.subscribe()之前执行某个方法,可以使用@ModelAttribute注解,使用方法自行google

  • Controller.java
    @GetMapping("/")
    public String subscribe(String accessToken, HttpServletRequest request) {
        return "SUCCESS";
    }
  • SubscribeAop.java
@Aspect
@Component
public class SubscribeAop {
    // 对以下com.web.controller.Controller类中的所有方法进行切入
    @Pointcut("execution(public * com.web.controller.Controller.*(..))")
    private void method(){
    }

    // @After("method() && args(jsonData ,request)")
    // public void recordLog(String jsonData ,HttpServletRequest request){
    @After("method()")  // 使用上面定义的切入点
    public void recordLog(){
       // 这里记录日志 , 这里处理的内容会切入controller中
    }
}
  • pom.xml
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
        </dependency>
  • application.properties
spring.aop.auto=true

参考:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,224评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,680评论 18 399
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,204评论 6 342
  • 本文的目的是简单介绍Spring Boot的一些入门配置的Quick Start,帮助快速上手; 不涉及Sprin...
    晓峰的简书阅读 7,134评论 2 3
  • 很久很久, 就学到了这样一句, 这样一句让自己揣摩已久的, 话…… 是烦恼, 是烦恼啊, 把身体糟蹋!
    小剧在成长阅读 1,526评论 0 1

友情链接更多精彩内容