SpringBoot 使用自定义注解(基于AOP) 实现操作日志管理

本文介绍了如何在SpringBoot中利用AOP和自定义注解实现操作日志管理,包括记录用户行为、日志实现思路、具体实现步骤、依赖引入以及自定义注解和AOP的使用,旨在提供一种业务运行日志的解决方案。
摘要由CSDN通过智能技术生成

操作日志的记录

因为我们不光要记录代码的运行,如(logback log4j),而且还应该记录用户的行为(Controller 请求日志),这叫做业务运行日志。

业务运行日志的作用

  1. 记录用户的行为 用于后续的分析
  2. 记录用户的所有的操作

日志实现的思路

1.我们需要记录哪些数据(谁在什么时间干了什么事情,结果如何)? 数据要存入到哪里(存储到数据库表,推送到指定日志存储服务,打印到日志文件等)?

2.在项目中什么位置记录(一般在Controller请求,进行around 环绕增强)

如何实现记录功能

实现方式:注解+AOP

Aop日志记录 具体代码实现

aop的使用流程,这里使用注解式aop来实现
具体步骤:

  1. 设置切入点
    1. 可以切在方法上
    2. 可以切在注解上
      @Transactional 事务注解 注解加在类上 aop 切在注解上
      
  2. 写增强 日志记录增强
    1. 获取日志的相关信息用户的id ip地址, 时间, 操作的描述, 类型等信息
    2. 将日志对象 添加到指定服务(文件,数据库,系统)

             

但是,操作的描述如何获取呢?

     使用自定义注解:

  1. 在 目标 方法上添加自定义注解 (@Logger) 如下

  2. 在增强中获取注解(@Logger)的属性获取

具体实现

依赖引入

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-aop</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

仰望星空@脚踏实地

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值