前言
老大让本人写一个方法,获取controller中的每个方法的执行时间,大于一定时间的抓出来,后期做优化。
网上找了一些方法,特此记录一下。
注意:这里需要各位同学对springboot有一定的了解。
话不多说,直接上代码:
aspect类:
package com.fengye.aspect;
import com.fengye.common.enums.ResultEnum;
import com.fengye.exception.MethodRunningTimeException;
import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;
/**
* @Description Aop切面类
* @Author ZF
* @Time 2017/8/14 11:12
*/
@Aspect
@Slf4j
@Component
public class HttpAspect {
/**
* 切入点
*/
@Pointcut("execution( * com.fengye.controller.*.*.*(..))")
public void aopPointCut() {}
/**
* 统计方法耗时环绕通知
* @param joinPoint
*/
@Around("aopPointCut()")
public Object timeAround(ProceedingJoinPoint joinPoint) {