若依框架中,这段代码用于记录日志。
@Before(value = “@annotation(controllerLog)”):在被@controllerLog注解标记的方法执行前,执行boBefore方法。
boBefore方法:将当前时间记录在TIME_THREADLOCAL中,以计算方法执行时间。
@doAfterReturning(pointcut = “@annotation(controllerLog)”, returning = “jsonResult”):在被@controllerLog注解标记的方法执行后并返回结果时,执行doAfterReturning方法。
@doAfterThrowing(value = “@annotation(controllerLog)”, throwing = “e”):在被@controllerLog注解标记的方法执行后并抛出异常时,执行doAfterThrowing方法。
handleLog方法:处理日志,包括记录操作状态、请求地址、操作者信息、方法名称、请求方式、注解中的参数、执行时间等信息,并保存到数据库中。
getControllerMethodDescription方法:获取注解中的参数,设置日志中的操作类型、标题、操作人类别、请求参数、返回结果等信息。
setRequestValue方法:获取请求参数信息,如果注解中设置了保存请求参数,则将请求参数添加到日志中。