Sobes.tech
Junior — Middle
94

Hogyan lehet egy számlálót megvalósítani egy olyan módszerben, amely figyelembe veszi ennek a módszernek a hívásainak számát, amely egy Spring komponensben található?

Cégeket kérdeztek
СБЕР КорпусСБЕР Корпус

Válasz az MI-től

sobes.tech MI

В Spring-компоненте можно реализовать счетчик вызовов метода с помощью поля класса, которое увеличивается при каждом вызове метода. Например, объявить поле private int counter = 0; и в методе делать counter++.

Пример:

@Component
public class MyComponent {
    private int counter = 0;

    public void myMethod() {
        counter++;
        System.out.println("Метод вызван " + counter + " раз");
        // остальной код метода
    }
}

Важно, что компонент должен быть синглтоном (по умолчанию в Spring), чтобы поле сохраняло состояние между вызовами. Если компонент прототип, счетчик будет сбрасываться.

Для потокобезопасности можно использовать AtomicInteger вместо int.