1。创建用户操作标识枚举@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public@interfaceUserOperateLog{Stringvalue();字符串值En();}2。创建枚举Interceptor,用于记录用户操作行为@Component@AspectpublicclassUserOperateLogAspect{@Around("@annotation(UserOperateLog)")@SneakyThrowspublicObjectaroundAspect(ProceedingJoinPointjoinPoint){//拼接用户操作日志模型//实际请求对象o=joinPoint.proceed();//填充模型//异步写入数据库returno;}}3.测试用例publicclassTestModel{@UserOperateLog(value="Testoperation",valueEn="test")publicvoidtest1(){}publicStringtest2(){return"";}}4、数据库字段1、id2、用户操作描述(UserOperateLog.value)3、请求url4、请求参数5、返回结果6、耗时7、用户id8、用户名9、创建时间10、请求结果是否失败11,异常信息12,英文描述(UserOperateLog.valueEn)
