Встречается на собеседованиях • сегодня
Как реализуешь счетчик внутри метода по подсчету вхождений в этот метод, находящийся внутри бина в 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`.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы