Назад к вопросам
Junior — Middle
65
Всегда ли вызывать метод, аннотированный @PostConstruct, при создании синглтон-бина в Spring?
Компании, где спрашивали
Stroki
Ответ от нейросети
sobes.tech AI
Метод, аннотированный @PostConstruct, вызывается контейнером Spring один раз после создания бина и внедрения всех зависимостей, но до того, как бин будет доступен для использования. Для синглтон-бинов этот метод вызывается всегда при инициализации контекста, если бин создаётся сразу (по умолчанию Spring создаёт синглтоны при старте контекста). Однако, если бин лениво инициализируется (@Lazy), метод @PostConstruct вызовется только при первом обращении к этому бину.
Таким образом, метод @PostConstruct вызывается при создании синглтон-бина, если бин действительно создаётся (не лениво). Если бин не создаётся (например, не используется и ленивый), метод не вызовется.