1. /**
    2. * 记录日志功能
    3. *
    4. * @param joinPoint
    5. * @param result
    6. */
    7. @AfterReturning(value = "cutService()", returning = "result")
    8. public void afterReturning(JoinPoint joinPoint, Object result) {
    9. MethodSignature methodSignature = (MethodSignature) joinPoint.getSignature();
    10. //获取方法对象
    11. Method method = methodSignature.getMethod();
    12. //获取方法上的注解
    13. LogRecord annotation = method.getAnnotation(LogRecord.class);
    14. UserDetail userDetail = (UserDetail) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
    15. WaterOperationLog waterOperationLog = new WaterOperationLog()
    16. .setClassName(method.getDeclaringClass().getName())//获取注解上的类名
    17. .setMethodName(method.getName()) //获取方法名字
    18. .setOperationContent(annotation.value()) //获取注解的内容
    19. .setCreateTime(new Date())
    20. .setUserId(userDetail.getUserId());
    21. this.waterOperationLogMapper.insert(waterOperationLog);
    22. }