Встречается на собеседованиях • сегодня
Как измерить время работы всех методов @Service
Для измерения времени работы методов в `@Service` можно использовать Spring AOP. Создадим аспект, который будет логировать время выполнения:
```java
@Aspect
@Component
public class ServiceMonitor {
@Around("execution(* com.yourpackage.service.*.*(..))")
public Object logExecutionTime(ProceedingJoinPoint joinPoint) throws Throwable {
long start = System.currentTimeMillis();
Object proceed = joinPoint.proceed();
long executionTime = System.currentTimeMillis() - start;
System.out.println(joinPoint.getSignature() + " executed in " + executionTime + "ms");
return proceed;
}
}
```
Не забудьте добавить в `pom.xml`:
```xml
org.springframework.boot
spring-boot-starter-aop
```
Этот аспект будет перехватывать все вызовы методов в классах из пакета `service` и логировать время их выполнения. Можно настроить pointcut более точно, если нужно измерять только определенные методы.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы