spring如何记录接口响应时间
时间: 2023-12-31 21:04:28 浏览: 46
可以使用Spring的AOP技术,在请求前和请求后进行时间戳记录,代码示例如下:
1. 自定义一个Aspect类,实现对Controller方法的拦截:
```
@Aspect
@Component
public class TimeAspect {
@Pointcut("execution(public * com.example.demo.controller..*.*(..))")
public void timeRecord() {}
@Around("timeRecord()")
public Object doAround(ProceedingJoinPoint pjp) throws Throwable {
long startTime = System.currentTimeMillis();
// 执行目标方法
Object result = pjp.proceed();
long endTime = System.currentTimeMillis();
// 打印请求耗时
System.out.println("请求耗时:" + (endTime - startTime) + "ms");
return result;
}
}
```
2. 在Spring配置中启用该Aspect:
```
@Configuration
@EnableAspectJAutoProxy
public class AppConfig {
}
```
这样,在每个请求调用时,都会记录下请求耗时,并输出到控制台上。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)