1、创立用户操作标识枚举

@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface UserOperateLog {    String value();    String valueEn();}

2、创立枚举拦截器,用来记录用户操作行为

@Component@Aspectpublic class UserOperateLogAspect {    @Around("@annotation(UserOperateLog)")    @SneakyThrows    public Object aroundAspect(ProceedingJoinPoint joinPoint){        //拼接用户操作日志模型                //理论申请       Object o =joinPoint.proceed();                //填充模型                //异步写入数据库                return o;    }}

3、测试案例

public class TestModel {    @UserOperateLog(value = "测试操作",valueEn="test")    public void test1() {    }    public String test2() {        return "";    }}

4、数据库字段

1、id2、用户操作形容(UserOperateLog.value)3、申请url4、申请参数5、返回后果6、耗时7、用户id8、用户名9、创立工夫10、申请后果是否失败11、异样信息12、英文形容(UserOperateLog.valueEn)