Встречается на собеседованиях • сегодня

Как реализуешь счетчик внутри метода по подсчету вхождений в этот метод, находящийся внутри бина в Spring

Для реализации счетчика вхождений в метод Spring-бина можно использовать аннотацию @Scope("prototype") или @Scope("singleton") с атомарным счетчиком. Лучший вариант — AtomicInteger для потокобезопасности:

java
import org.springframework.stereotype.Component;
import java.util.concurrent.atomic.AtomicInteger;

@Component
public class MyService {
private final AtomicInteger counter = new AtomicInteger(0);

text
public void myMethod() {
    int currentCount = counter.incrementAndGet();
    System.out.println("Method called " + currentCount + " times");
}

}

text

**Варианты:**
1. Для `singleton` (по умолчанию) — счетчик общий для всех вызовов
2. Для `prototype` — новый экземпляр бина при каждом вызове (счетчик будет сбрасываться)

Если нужно сохранять состояние между перезапусками приложения — можно использовать `@Repository` + БД или `@Cacheable`.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы